@zjbtest/contracts
Version:
AcalaNetwork Smart Contract library for Solidity
1,262 lines • 160 kB
JSON
{
"contractName": "Oracle",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "token",
"type": "address"
}
],
"name": "getPrice",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
],
"metadata": "{\"compiler\":{\"version\":\"0.8.0+commit.c7dfd78e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"getPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"getPrice(address)\":{\"details\":\"Get the price of the currency_id. Returns the (price, timestamp)\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/runner/work/predeploy-contracts/predeploy-contracts/contracts/oracle/Oracle.sol\":\"Oracle\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/home/runner/work/predeploy-contracts/predeploy-contracts/contracts/oracle/IOracle.sol\":{\"keccak256\":\"0x9ee6c9eeb31d554e9dbd373d00ebc851338cd3f929cbecdead114d8c9c37d80a\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://aa50be779cea5de6aa3bff6e0868cf7ee3379773d7893d5b8f2a6697718ca3ac\",\"dweb:/ipfs/QmXFEyXihcWcroD8VLUCVBiQBSxn1HvjTvBM6Tsva3PJyS\"]},\"/home/runner/work/predeploy-contracts/predeploy-contracts/contracts/oracle/Oracle.sol\":{\"keccak256\":\"0x1f20adc8f5adf465726f62f9aa0e475722d1f7fa81280928f9b2e2ede5531c0a\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://5ad5af8b18e51a6837f718f4d74e5f5f02d31b03a054a489566d5e6b482c9c43\",\"dweb:/ipfs/QmPtaE2XGyM1kU7BF89qv9XxfkHWmj6PdmJqC5Wf4dGzR7\"]}},\"version\":1}",
"bytecode": "0x608060405234801561001057600080fd5b5061046c806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806341976e0914610030575b600080fd5b61004a60048036038101906100459190610224565b610060565b6040516100579190610357565b60405180910390f35b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156100d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100c890610337565b60405180910390fd5b60008061040373ffffffffffffffffffffffffffffffffffffffff16846040516024016100fe919061031c565b6040516020818303038152906040527f41976e09000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516101889190610305565b600060405180830381855afa9150503d80600081146101c3576040519150601f19603f3d011682016040523d82523d6000602084013e6101c8565b606091505b509150915060008214156101dd573d60208201fd5b808060200190518101906101f1919061024d565b92505050919050565b60008135905061020981610408565b92915050565b60008151905061021e8161041f565b92915050565b60006020828403121561023657600080fd5b6000610244848285016101fa565b91505092915050565b60006020828403121561025f57600080fd5b600061026d8482850161020f565b91505092915050565b61027f81610399565b82525050565b600061029082610372565b61029a818561037d565b93506102aa8185602086016103d5565b80840191505092915050565b60006102c3601d83610388565b91507f4f7261636c653a20746f6b656e206973207a65726f20616464726573730000006000830152602082019050919050565b6102ff816103cb565b82525050565b60006103118284610285565b915081905092915050565b60006020820190506103316000830184610276565b92915050565b60006020820190508181036000830152610350816102b6565b9050919050565b600060208201905061036c60008301846102f6565b92915050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b60006103a4826103ab565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b838110156103f35780820151818401526020810190506103d8565b83811115610402576000848401525b50505050565b61041181610399565b811461041c57600080fd5b50565b610428816103cb565b811461043357600080fd5b5056fea264697066735822122078d0f9c9da5efa4e28c11a9b9b413e3dc52714b6c6861099f902c9908bc0ae6964736f6c63430008000033",
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806341976e0914610030575b600080fd5b61004a60048036038101906100459190610224565b610060565b6040516100579190610357565b60405180910390f35b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156100d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100c890610337565b60405180910390fd5b60008061040373ffffffffffffffffffffffffffffffffffffffff16846040516024016100fe919061031c565b6040516020818303038152906040527f41976e09000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516101889190610305565b600060405180830381855afa9150503d80600081146101c3576040519150601f19603f3d011682016040523d82523d6000602084013e6101c8565b606091505b509150915060008214156101dd573d60208201fd5b808060200190518101906101f1919061024d565b92505050919050565b60008135905061020981610408565b92915050565b60008151905061021e8161041f565b92915050565b60006020828403121561023657600080fd5b6000610244848285016101fa565b91505092915050565b60006020828403121561025f57600080fd5b600061026d8482850161020f565b91505092915050565b61027f81610399565b82525050565b600061029082610372565b61029a818561037d565b93506102aa8185602086016103d5565b80840191505092915050565b60006102c3601d83610388565b91507f4f7261636c653a20746f6b656e206973207a65726f20616464726573730000006000830152602082019050919050565b6102ff816103cb565b82525050565b60006103118284610285565b915081905092915050565b60006020820190506103316000830184610276565b92915050565b60006020820190508181036000830152610350816102b6565b9050919050565b600060208201905061036c60008301846102f6565b92915050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b60006103a4826103ab565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b838110156103f35780820151818401526020810190506103d8565b83811115610402576000848401525b50505050565b61041181610399565b811461041c57600080fd5b50565b610428816103cb565b811461043357600080fd5b5056fea264697066735822122078d0f9c9da5efa4e28c11a9b9b413e3dc52714b6c6861099f902c9908bc0ae6964736f6c63430008000033",
"immutableReferences": {},
"generatedSources": [],
"deployedGeneratedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:4292:20",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "59:87:20",
"statements": [
{
"nodeType": "YulAssignment",
"src": "69:29:20",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "91:6:20"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "78:12:20"
},
"nodeType": "YulFunctionCall",
"src": "78:20:20"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "69:5:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "134:5:20"
}
],
"functionName": {
"name": "validator_revert_t_address",
"nodeType": "YulIdentifier",
"src": "107:26:20"
},
"nodeType": "YulFunctionCall",
"src": "107:33:20"
},
"nodeType": "YulExpressionStatement",
"src": "107:33:20"
}
]
},
"name": "abi_decode_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "37:6:20",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "45:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "53:5:20",
"type": ""
}
],
"src": "7:139:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "215:80:20",
"statements": [
{
"nodeType": "YulAssignment",
"src": "225:22:20",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "240:6:20"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "234:5:20"
},
"nodeType": "YulFunctionCall",
"src": "234:13:20"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "225:5:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "283:5:20"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nodeType": "YulIdentifier",
"src": "256:26:20"
},
"nodeType": "YulFunctionCall",
"src": "256:33:20"
},
"nodeType": "YulExpressionStatement",
"src": "256:33:20"
}
]
},
"name": "abi_decode_t_uint256_fromMemory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "193:6:20",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "201:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "209:5:20",
"type": ""
}
],
"src": "152:143:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "367:196:20",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "413:16:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "422:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "425:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "415:6:20"
},
"nodeType": "YulFunctionCall",
"src": "415:12:20"
},
"nodeType": "YulExpressionStatement",
"src": "415:12:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "388:7:20"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "397:9:20"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "384:3:20"
},
"nodeType": "YulFunctionCall",
"src": "384:23:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "409:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "380:3:20"
},
"nodeType": "YulFunctionCall",
"src": "380:32:20"
},
"nodeType": "YulIf",
"src": "377:2:20"
},
{
"nodeType": "YulBlock",
"src": "439:117:20",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "454:15:20",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "468:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "458:6:20",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "483:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "518:9:20"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "529:6:20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "514:3:20"
},
"nodeType": "YulFunctionCall",
"src": "514:22:20"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "538:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nodeType": "YulIdentifier",
"src": "493:20:20"
},
"nodeType": "YulFunctionCall",
"src": "493:53:20"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "483:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "337:9:20",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "348:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "360:6:20",
"type": ""
}
],
"src": "301:262:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "646:207:20",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "692:16:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "701:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "704:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "694:6:20"
},
"nodeType": "YulFunctionCall",
"src": "694:12:20"
},
"nodeType": "YulExpressionStatement",
"src": "694:12:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "667:7:20"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "676:9:20"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "663:3:20"
},
"nodeType": "YulFunctionCall",
"src": "663:23:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "688:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "659:3:20"
},
"nodeType": "YulFunctionCall",
"src": "659:32:20"
},
"nodeType": "YulIf",
"src": "656:2:20"
},
{
"nodeType": "YulBlock",
"src": "718:128:20",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "733:15:20",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "747:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "737:6:20",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "762:74:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "808:9:20"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "819:6:20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "804:3:20"
},
"nodeType": "YulFunctionCall",
"src": "804:22:20"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "828:7:20"
}
],
"functionName": {
"name": "abi_decode_t_uint256_fromMemory",
"nodeType": "YulIdentifier",
"src": "772:31:20"
},
"nodeType": "YulFunctionCall",
"src": "772:64:20"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "762:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256_fromMemory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "616:9:20",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "627:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "639:6:20",
"type": ""
}
],
"src": "569:284:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "924:53:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "941:3:20"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "964:5:20"
}
],
"functionName": {
"name": "cleanup_t_address",
"nodeType": "YulIdentifier",
"src": "946:17:20"
},
"nodeType": "YulFunctionCall",
"src": "946:24:20"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "934:6:20"
},
"nodeType": "YulFunctionCall",
"src": "934:37:20"
},
"nodeType": "YulExpressionStatement",
"src": "934:37:20"
}
]
},
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "912:5:20",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "919:3:20",
"type": ""
}
],
"src": "859:118:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1091:265:20",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1101:52:20",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1147:5:20"
}
],
"functionName": {
"name": "array_length_t_bytes_memory_ptr",
"nodeType": "YulIdentifier",
"src": "1115:31:20"
},
"nodeType": "YulFunctionCall",
"src": "1115:38:20"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "1105:6:20",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "1162:95:20",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1245:3:20"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1250:6:20"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulIdentifier",
"src": "1169:75:20"
},
"nodeType": "YulFunctionCall",
"src": "1169:88:20"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1162:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1292:5:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1299:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1288:3:20"
},
"nodeType": "YulFunctionCall",
"src": "1288:16:20"
},
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1306:3:20"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1311:6:20"
}
],
"functionName": {
"name": "copy_memory_to_memory",
"nodeType": "YulIdentifier",
"src": "1266:21:20"
},
"nodeType": "YulFunctionCall",
"src": "1266:52:20"
},
"nodeType": "YulExpressionStatement",
"src": "1266:52:20"
},
{
"nodeType": "YulAssignment",
"src": "1327:23:20",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1338:3:20"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1343:6:20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1334:3:20"
},
"nodeType": "YulFunctionCall",
"src": "1334:16:20"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "1327:3:20"
}
]
}
]
},
"name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1072:5:20",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "1079:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "1087:3:20",
"type": ""
}
],
"src": "983:373:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1508:181:20",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1518:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1584:3:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1589:2:20",
"type": "",
"value": "29"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "1525:58:20"
},
"nodeType": "YulFunctionCall",
"src": "1525:67:20"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1518:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1613:3:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1618:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1609:3:20"
},
"nodeType": "YulFunctionCall",
"src": "1609:11:20"
},
{
"kind": "string",
"nodeType": "YulLiteral",
"src": "1622:31:20",
"type": "",
"value": "Oracle: token is zero address"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1602:6:20"
},
"nodeType": "YulFunctionCall",
"src": "1602:52:20"
},
"nodeType": "YulExpressionStatement",
"src": "1602:52:20"
},
{
"nodeType": "YulAssignment",
"src": "1664:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1675:3:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1680:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1671:3:20"
},
"nodeType": "YulFunctionCall",
"src": "1671:12:20"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "1664:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_368a000050d2c2f953d3bcd0d3890d264885bfa36b329f94203a8755338c8f98_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "1496:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "1504:3:20",
"type": ""
}
],
"src": "1362:327:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1760:53:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1777:3:20"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1800:5:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "1782:17:20"
},
"nodeType": "YulFunctionCall",
"src": "1782:24:20"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1770:6:20"
},
"nodeType": "YulFunctionCall",
"src": "1770:37:20"
},
"nodeType": "YulExpressionStatement",
"src": "1770:37:20"
}
]
},
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1748:5:20",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "1755:3:20",
"type": ""
}
],
"src": "1695:118:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1953:137:20",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1964:100:20",
"value": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "2051:6:20"
},
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "2060:3:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulIdentifier",
"src": "1971:79:20"
},
"nodeType": "YulFunctionCall",
"src": "1971:93:20"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1964:3:20"
}
]
},
{
"nodeType": "YulAssignment",
"src": "2074:10:20",
"value": {
"name": "pos",
"nodeType": "YulIdentifier",
"src": "2081:3:20"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "2074:3:20"
}
]
}
]
},
"name": "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "1932:3:20",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1938:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "1949:3:20",
"type": ""
}
],
"src": "1819:271:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2194:124:20",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2204:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2216:9:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2227:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2212:3:20"
},
"nodeType": "YulFunctionCall",
"src": "2212:18:20"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2204:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "2284:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2297:9:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2308:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2293:3:20"
},
"nodeType": "YulFunctionCall",
"src": "2293:17:20"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulIdentifier",
"src": "2240:43:20"
},
"nodeType": "YulFunctionCall",
"src": "2240:71:20"
},
"nodeType": "YulExpressionStatement",
"src": "2240:71:20"
}
]
},
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "2166:9:20",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "2178:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "2189:4:20",
"type": ""
}
],
"src": "2096:222:20"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2495:248:20",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2505:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2517:9:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2528:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2513:3:20"
},
"nodeType": "YulFunctionCall",
"src": "2513:18:20"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2505:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2552:9:20"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2563:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2548:3:20"
},
"nodeType": "YulFunctionCall",
"src": "2548:17:20"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2571:4:20"
},
{
"name": "hea