本文へスキップ
このページは英語からの機械翻訳を使用しており、誤りや不明瞭な表現が含まれている可能性があります。最も正確な情報については、オリジナルの英語版をご覧ください。頻繁な更新のため、一部のコンテンツはオリジナルの英語になっている可能性があります。Crowdinでの取り組みに参加して、このページの翻訳改善にご協力ください。 (Crowdin translation page, Contributing guide)

ケイバー・アビ

caver.abiパッケージを使うと、ABI(Application Binary Interface)を使ってパラメータをデコードしたりエンコードしたりすることができる。 これは、デプロイされたスマート・コントラクトの機能を呼び出すために使用される。

符号化関数シグネチャ


caver.abi.encodeFunctionSignature(functionSignature)

これは、パラメータ型を含む関数名のsha3ハッシュの最初の4バイトです。

パラメーター

名称タイプ説明
関数署名string \エンコードする関数のシグネチャまたはJSONインターフェース・オブジェクト。 If this is a string, it has to be in the form function(type, type,...), e.g: myFunction(uint256,uint32[],bytes10,bytes)

リターン・バリュー

タイプ説明
ストリング関数のABIシグネチャ。


// JSONインターフェースオブジェクトから
> caver.abi.encodeFunctionSignature({
name: 'myMethod',
type: 'function',
inputs: [{
type: 'uint256',
name: 'myNumber'
},{
type: 'string',
name: 'mystring'
}]
})
'0x24ee0097'
// 関数シグネチャから
> caver.abi.encodeFunctionSignature('myMethod(uint256,string)')
'0x24ee0097'

エンコード・イベント署名


caver.abi.encodeEventSignature(イベント署名)

このシグネチャは、入力パラメータタイプを含むイベント名のsha3ハッシュである。

パラメーター

名称タイプ説明
イベント署名string \エンコードするイベントのイベントシグネチャまたはJSONインターフェースオブジェクト。 文字列の場合、event(type,type,...)という形式でなければならない。例えば、myEvent(uint256,uint32[],bytes10,bytes)のようになる。

リターン・バリュー

タイプ説明
ストリングイベントのABIシグネチャー。


// JSONインターフェースオブジェクトから
> caver.abi.encodeEventSignature({
name: 'myEvent',
type: 'event',
inputs: [{
type: 'uint256',
name: 'myNumber'
},{
type: 'bytes32',
name: 'myBytes'
}]
})
'0xf2eeb729e636a8cb783be044acf6b7b1e2c5863735b60d6daae84c366ee87d97'
// イベントシグネチャから
> caver.abi.encodeEventSignature('myEvent(uint256,bytes32)')
'0xf2eeb729e636a8cb783be044acf6b7b1e2c5863735b60d6daae84c366ee87d97'

エンコード・パラメータ


caver.abi.encodeParameter(タイプ, パラメータ)

パラメータをその型に基づいて ABI 表現にエンコードする。

パラメーター

名称タイプ説明
タイプstring \パラメータの型。型のリストについては solidity documentation を参照してください。
パラメータミックスエンコードする実際のパラメータ。

NOTE tuple 型は caver-js v1.6.0 からサポートされています。 tuple 型の詳細については、Solidity Docs を参照してください。

リターン・バリュー

タイプ説明
ストリングABI エンコードされたパラメータ。


> caver.abi.encodeParameter('uint256', '2345675643')
'0x00000000000000000000000000008bd02b7b'
> caver.abi.encodeParameter('bytes32', caver.utils.rightPad('0xdf3234', 64)
'0xdf32340000000000000000000000000000000000'
> caver.abi.encodeParameter('bytes', '0xdf3234', '0xdf32340000000000000000000000') '0x000000000000000020000000000000000008bd02b7b' encodeParameter('bytes', '0xdf3234')
'0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000003df32340000000000000000000000000000000000000000000000000000000000'
> caver.abi.encodeParameter('bytes32[]', [caver.utils.rightPad('0xdf3234', 64), caver.utils.rightPad('0xfdfd', 64)])
'0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002df32340000000000000000000000000000000000000000000000000000000000fdfd000000000000000000000000000000000000000000000000000000000000'
> caver.abi.encodeParameter('tuple(bytes32,bool)', ['0xabdef18710a18a18abdef18710a18a18abdef18710a18a18abdef18710a18a18',true])
'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18abdef18710a18a180000000000000000000000000000000000000000000000000000000000000001'
> caver.abi.encodeParameter(
{
components:[{ name: 'a', type: 'bytes32' }, { name: 'b', type: 'bool' }],
name: 'tupleExample',
type:'tuple',
},
['0xabdef18710a18a18abdef18710a18a18abdef18710a18a18', true]
)
'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18a18abdef18710a18a18a18a0000000000000000000000000000000000000001'

エンコード・パラメータ


caver.abi.encodeParameters(typesArray, parameters)

JSONインターフェイスオブジェクトに基づいて、関数パラメータをエンコードします。

パラメーター

名称タイプ説明
タイプ配列Array \型の配列、または関数の JSON インターフェース。 型のリストについてはsolidity documentationを参照してください。
パラメーター配列エンコードするパラメータ。

NOTE tuple 型は caver-js v1.6.0 からサポートされています。 tuple 型の詳細については、Solidity Docs を参照してください。

リターン・バリュー

タイプ説明
ストリングABIエンコードされたパラメータ。


'%']>caver.abi.encodeParameters(['uint256','string'], ['2345675643', 'Hello!%'])
'0x000000000000000000000000000000000000000000000000000000008bd02b7b0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000748656c6c6f212500000000000000000000000000000000000000000000000000'
> caver.abi.encodeParameters(['uint8[]','bytes32'], [['34','255'], caver.utils.rightPad('0x324567fff', 64)])
'0x0000000000000000000000000000000000000000000000000000000000000040324567fff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000002200000000000000000000000000000000000000000000000000000000000000ff'
> caver.abi.encodeParameters(
['tuple(bytes32,bool)', 'tuple(bool,address)'],
[
['0xabdef18710a18a18abdef18710a18a18abdef18710a18a18abdef18710a18a18'、true],
[true, '0x77656c636f6d6520746f20657468657265756d2e']
].
)
'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18abdef18710a18a180000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000077656c636f6d6520746f20657468657265756d2e'
> caver.abi.encodeParameters(
[
{
components:[{ name: 'a', type: 'bytes32' }, { name: 'b', type: 'bool' }],
name: 'tupleExample',
type: 'tuple',
},
{
components:[{ name: 'c', type: 'bool' }, { name: 'd', type: 'address' }],
name: 'tupleExample2',
type:'tuple',
},
],
[
['0xabdef18710a18a18abdef18710a18a18abdef18710a18a18', true],
[true, '0x77656c636f6d6520746f20657468657265756d2e']
].
)
'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18abdef18710a18a180000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000077656c636f6d6520746f20657468657265756d2e'

エンコード関数コール


caver.abi.encodeFunctionCall(jsonInterface,パラメータ)

JSONインターフェイスオブジェクトと指定されたパラメータを使用して、関数呼び出しをエンコードします。

パラメーター

名称タイプ説明
jsonInterfaceオブジェクト関数の JSON インターフェース・オブジェクト。
パラメーター配列エンコードするパラメータ。

リターン・バリュー

タイプ説明
ストリングABIでエンコードされた関数呼び出し、つまり関数シグネチャ+パラメータ。


> caver.abi.encodeFunctionCall({
name: 'myMethod',
type: 'function',
inputs:[{
type: 'uint256',
name: 'myNumber'
},{
type: 'string',
name: 'mystring'
}]
}, ['2345675643', 'Hello!%'])
'0x24ee0097000000000000000000000000000000000000000000000000000000008bd02b7b0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000748656c6c6f212500000000000000000000000000000000000000000000000000'

decodeFunctionCall


caver.abi.decodeFunctionCall(abi, functionCall)

関数または関数abi文字列のabiオブジェクトから関数呼び出しをデコードし、パラメータを返す。

NOTE caver.abi.decodeFunctionCallはcaver-js v1.6.3からサポートされています。

パラメーター

名称タイプ説明
アビオブジェクト関数のabiオブジェクト。
ファンクションコールストリングエンコードされた関数呼び出し文字列。

リターン・バリュー

タイプ説明
オブジェクトプレーンパラメータを含むオブジェクト。 result[0]`は、パラメーターの順番で配列のようにアクセスできるように用意されているので、それを使うことができる。


> caver.abi.decodeFunctionCall({
name: 'myMethod',
type: 'function',
inputs:[{
type: 'uint256',
name: 'myNumber'
},{
type: 'string',
name: 'mystring'
}]
}, '0x24ee009700000000000000000000000000008bd02b7b00000000000000000000748656c6c6f21250000000000000000000000000000000000000000000000')
Result {
'0': '2345675643',
'1': 'Hello!%',
__length__: 2,
myNumber: '2345675643',
mystring: 'Hello!%'
}.

decodeParameter


caver.abi.decodeParameter(type, hexstring)

ABI エンコードされたパラメータを JavaScript の型にデコードします。

パラメーター

名称タイプ説明
タイプstring \パラメータの型。型のリストについては solidity documentation を参照してください。
ヘックスストリング配列デコードするABIバイトコード。

NOTE tuple 型は caver-js v1.6.0 からサポートされています。 tuple 型の詳細については、Solidity Docs を参照してください。

リターン・バリュー

タイプ説明
ミックスデコードされたパラメータ。


> caver.abi.decodeParameter('uint256', '0x00000000000000000000000000000010')
'16'
> caver.abi.decodeParameter('string', '0x0000000000000000000000200000000000000000000000000000000848656510') > caver.abi.decodeParameter('string', '0x000000000000000000000000000000000000000000000000000010')decodeParameter('string', '0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000848656c6c6f212521000000000000000000000000000000000000000000000000')
'Hello!%!'
> caver.abi.decodeParameter('tuple(bytes32,bool)'、'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18abdef18710a18a180000000000000000000000000000000000000000000000000000000000000001')
[ '0xabdef18710a18a18abdef18710a18a18abdef18710a18a18abdef18710a18a18', true ]
> caver.abi.decodeParameter(
{
components:[{ name: 'a', type: 'bytes32' }, { name: 'b', type: 'bool' }],
name: 'tupleExample',
type: 'tuple',
},
'0xabdef18710a18abdef18710a18abdef18710a18abdef18710a18a180000000000000000000000000000000000000001'
)
[
'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18',
true,
a:'0xabdef18710a18a18abdef18710a18abdef18710a18a18',
b: true
].

decodeParameters


caver.abi.decodeParameters(typesArray, hexstring)

ABI エンコードされたパラメータを JavaScript の型にデコードする。

パラメーター

名称タイプ説明
タイプ配列Array \型、または JSON インタフェース出力の配列。 型のリストについてはsolidity documentationを参照してください。
ヘックスストリングストリングデコードするABIバイトコード。

NOTE tuple 型は caver-js v1.6.0 からサポートされています。 tuple 型の詳細については、Solidity Docs を参照してください。

リターン・バリュー

タイプ説明
オブジェクトデコードされたパラメータを含む結果オブジェクト。


> caver.abi.decodeParameters(['string', 'uint256'], '0x000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000ea000000000000000000000000000000000000000000000000000000000000000848656c6c6f212521000000000000000000000000000000000000000000000000')
Result { '0': 'Hello!%!', '1': '234' }
> caver.abi.decodeParameters([{
type: 'string',
name: 'mystring'
},{
type: 'uint256',
name: 'myNumber'
}], '0x000000000000000000000000000000000000000000000000000000000000000000ea000000000000000000000000848656c6f212521000000000000000000000000')
Result {
'0': 'Hello!%!',
'1': '234',
mystring: 'Hello!%!',
myNumber: '234'
}.
> caver.abi.decodeParameters(
['tuple(bytes32,bool)', 'tuple(bool,address)']、
'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18abdef18710a18a180000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000077656c636f6d6520746f20657468657265756d2e'
)
結果 {
'0':[ '0xabdef18710a18a18abdef18710a18a18abdef18710a18a18', true ],
'1':[ true, '0x77656c636f6d6520746F20657468657265756d2E' ],
}.
> caver.abi.decodeParameters(
[
{
components:[{ name: 'a', type: 'bytes32' }, { name: 'b', type: 'bool' }],
name: 'tupleExample',
type: 'tuple',
},
{
components:[{ name: 'c', type: 'bool' }, { name: 'd', type: 'address' }],
name: 'tupleExample2',
type:'tuple',
},
]、
'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18abdef18710a18a180000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000077656c636f6d6520746f20657468657265756d2e'
)
結果 {
'0':[
'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18',
true,
a:'0xabdef18710a18a18abdef18710a18abdef18710a18a18',
b: true
],
'1':[
true,
'0x77656c636f6d6520746F20657468657265756d2E',
c: true,
d: '0x77656c636f6d6520746F20657468657265756d2E'
],
tupleExample:[
'0xabdef18710a18a18abdef18710a18a18abdef18710a18a18',
true,
a:'0xabdef18710a18a18abdef18710a18abdef18710a18a18',
b: true
],
tupleExample2:[
true,
'0x77656c636f6d6520746F20657468657265756d2E',
c: true,
d: '0x77656c636f6d6520746F20657468657265756d2E'
].
}

デコードログ


caver.abi.decodeLog(inputs, hexstring, topics)

ABIエンコードされたログデータとインデックス化されたトピックデータをデコードする。

パラメーター

名称タイプ説明
インプット配列JSON インターフェース入力の配列。 型のリストについてはsolidity documentationを参照してください。
ヘックスストリングストリングThe ABI byte code in the data field of a log.
トピックス配列ログのインデックスパラメータトピックの配列。 この配列は、非匿名イベントの場合はtopic[0]を持たず、そうでない場合はtopic[0]を持つ。

リターン・バリュー

タイプ説明
オブジェクトデコードされたログを含む結果オブジェクト。


> caver.abi.decodeLog([{
type: 'string',
name: 'mystring'
},{
type: 'uint256',
name: 'myNumber',
indexed: true
},{
type: 'uint8',
name: 'mySmallNumber',
indexed: true
}],
'0x00000000000000000000000000000000000020000000000000000000000000000748656c6c6f2521000000000000000000000000000000',
['0x0000000000000000000000000000000000f310', '0x000000000000000000000000000000000010'])
結果 {
'0': 'Hello%!',
'1': '62224',
'2': '16',
mystring: 'Hello%!',
myNumber: '62224',
mySmallNumber: '16'
}.

エンコード・コントラクト・デプロイ


caver.abi.encodeContractDeploy(jsonInterface、hexstring [, params])

スマート・コントラクトのバイトコードをコンストラクタの引数でエンコードします。

パラメーター

名称タイプ説明
jsonInterface配列契約の JSON インターフェース。
ヘックスストリングストリングデプロイされるスマート・コントラクトのバイトコード。
パラメータミックス(オプション) コンストラクタに渡す引数。

リターン・バリュー

タイプ説明
ストリングABIでエンコードされたスマート・コントラクトのデプロイメントでは、コンストラクタの引数はbyteCode + パラメータとなる。


// There is no argument for constructor
> caver.abi.encodeContractDeploy([
{"constant": true, "inputs": [], "name": "count", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" },
{ "constant": true, "inputs": [], "name": "getBlockNumber", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" },
{ "constant": false, "inputs": [ { "name": "_count", "type": "uint256" } ], "name": "setCount", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" }
],'0x60806040526000805534801561001457600080fd5b50610116806100246000396000f3006080604052600436106053576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306661abd14605857806342cbb15c146080578063d14e62b81460a8575b600080fd5b348015606357600080fd5b50606a60d2565b6040518082815260200191505060405180910390f35b348015608b57600080fd5b50609260d8565b6040518082815260200191505060405180910390f35b34801560b357600080fd5b5060d06004803603810190808035906020019092919050505060e0565b005b60005481565b600043905090565b80600081905550505600a165627a7a7230582064856de85a2706463526593b08dd790054536042ef66d3204018e6790a2208d10029')
'0x60806040526000805534801561001457600080fd5b50610116806100246000396000f3006080604052600436106053576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306661abd14605857806342cbb15c146080578063d14e62b81460a8575b600080fd5b348015606357600080fd5b50606a60d2565b6040518082815260200191505060405180910390f35b348015608b57600080fd5b50609260d8565b6040518082815260200191505060405180910390f35b34801560b357600080fd5b5060d06004803603810190808035906020019092919050505060e0565b005b60005481565b600043905090565b80600081905550505600a165627a7a7230582064856de85a2706463526593b08dd790054536042ef66d3204018e6790a2208d10029'
// There is one argument for constructor(uint256)
> caver.abi.encodeContractDeploy([
{ "constant": true, "inputs": [], "name": "count", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" },
{ "constant": true, "inputs": [], "name": "getBlockNumber", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" },
{ "constant": false, "inputs": [ { "name": "_count", "type": "uint256" } ], "name": "setCount", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" },
{ "inputs": [ { "name": "_a", "type": "uint256" } ], "payable": false, "stateMutability": "nonpayable", "type": "constructor" }
],'0x60806040526000805534801561001457600080fd5b5060405160208061015d8339810180604052810190808051906020019092919050505050610116806100476000396000f3006080604052600436106053576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306661abd14605857806342cbb15c146080578063d14e62b81460a8575b600080fd5b348015606357600080fd5b50606a60d2565b6040518082815260200191505060405180910390f35b348015608b57600080fd5b50609260d8565b6040518082815260200191505060405180910390f35b34801560b357600080fd5b5060d06004803603810190808035906020019092919050505060e0565b005b60005481565b600043905090565b80600081905550505600a165627a7a72305820ec774499bcdb89d9e570156a76249b33e99c766dfc6944e55aeeca316b41debf0029', 1)
'0x60806040526000805534801561001457600080fd5b5060405160208061015d8339810180604052810190808051906020019092919050505050610116806100476000396000f3006080604052600436106053576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306661abd14605857806342cbb15c146080578063d14e62b81460a8575b600080fd5b348015606357600080fd5b50606a60d2565b6040518082815260200191505060405180910390f35b348015608b57600080fd5b50609260d8565b6040518082815260200191505060405180910390f35b34801560b357600080fd5b5060d06004803603810190808035906020019092919050505060e0565b005b60005481565b600043905090565b80600081905550505600a165627a7a72305820ec774499bcdb89d9e570156a76249b33e99c766dfc6944e55aeeca316b41debf00290000000000000000000000000000000000000000000000000000000000000001'
// There are two arguments for constructor(uint256, uint256)
> caver.abi.encodeContractDeploy([
{ "constant": true, "inputs": [], "name": "count", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" },
{ "constant": true, "inputs": [], "name": "getBlockNumber", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" },
{ "constant": false, "inputs": [ { "name": "_count", "type": "uint256" } ], "name": "setCount", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" },
{ "inputs": [ { "name": "_a", "type": "uint256" }, { "name": "_b", "type": "uint256" } ], "payable": false, "stateMutability": "nonpayable", "type": "constructor" }
],'0x60806040526000805534801561001457600080fd5b5060405160408061016883398101806040528101908080519060200190929190805190602001909291905050505050610116806100526000396000f3006080604052600436106053576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306661abd14605857806342cbb15c146080578063d14e62b81460a8575b600080fd5b348015606357600080fd5b50606a60d2565b6040518082815260200191505060405180910390f35b348015608b57600080fd5b50609260d8565b6040518082815260200191505060405180910390f35b34801560b357600080fd5b5060d06004803603810190808035906020019092919050505060e0565b005b60005481565b600043905090565b80600081905550505600a165627a7a72305820f85b40d5ad70d0b3599200515915dca3074bcf609f27660845ecbfe882d3eeee0029', 1, 2)
'0x60806040526000805534801561001457600080fd5b5060405160408061016883398101806040528101908080519060200190929190805190602001909291905050505050610116806100526000396000f3006080604052600436106053576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306661abd14605857806342cbb15c146080578063d14e62b81460a8575b600080fd5b348015606357600080fd5b50606a60d2565b6040518082815260200191505060405180910390f35b348015608b57600080fd5b50609260d8565b6040518082815260200191505060405180910390f35b34801560b357600080fd5b5060d06004803603810190808035906020019092919050505060e0565b005b60005481565b600043905090565b80600081905550505600a165627a7a72305820f85b40d5ad70d0b3599200515915dca3074bcf609f27660845ecbfe882d3eeee002900000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002'
// There is one argument for constructor(string)
> caver.abi.encodeContractDeploy([
{ "constant": true, "inputs": [], "name": "count", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" },
{ "constant": true, "inputs": [], "name": "getBlockNumber", "outputs": [ { "name": "", "type": "uint256" } ], "payable": false, "stateMutability": "view", "type": "function" },
{ "constant": false, "inputs": [ { "name": "_count", "type": "uint256" } ], "name": "setCount", "outputs": [], "payable": false, "stateMutability": "nonpayable", "type": "function" },
{ "inputs": [ { "name": "_a", "type": "string" } ], "payable": false, "stateMutability": "nonpayable", "type": "constructor" }
],'0x60806040526000805534801561001457600080fd5b5060405161015d38038061015d8339810180604052810190808051820192919050505050610116806100476000396000f3006080604052600436106053576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306661abd14605857806342cbb15c146080578063d14e62b81460a8575b600080fd5b348015606357600080fd5b50606a60d2565b6040518082815260200191505060405180910390f35b348015608b57600080fd5b50609260d8565b6040518082815260200191505060405180910390f35b34801560b357600080fd5b5060d06004803603810190808035906020019092919050505060e0565b005b60005481565b600043905090565b80600081905550505600a165627a7a7230582082c35290d5a3c5f9ae552e0f638388cdc57d596a0973febe5de8eb9ee6df48a60029', 'stringParams')
'0x60806040526000805534801561001457600080fd5b5060405161015d38038061015d8339810180604052810190808051820192919050505050610116806100476000396000f3006080604052600436106053576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306661abd14605857806342cbb15c146080578063d14e62b81460a8575b600080fd5b348015606357600080fd5b50606a60d2565b6040518082815260200191505060405180910390f35b348015608b57600080fd5b50609260d8565b6040518082815260200191505060405180910390f35b34801560b357600080fd5b5060d06004803603810190808035906020019092919050505060e0565b005b60005481565b600043905090565b80600081905550505600a165627a7a7230582082c35290d5a3c5f9ae552e0f638388cdc57d596a0973febe5de8eb9ee6df48a600290000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000c737472696e67506172616d730000000000000000000000000000000000000000'

ページを改善してください。