Skip to content

Instantly share code, notes, and snippets.

@YamilEzequiel
Created September 23, 2022 19:55
Show Gist options
  • Select an option

  • Save YamilEzequiel/f50dc2b8ce8a1b23e1c6882245e75f09 to your computer and use it in GitHub Desktop.

Select an option

Save YamilEzequiel/f50dc2b8ce8a1b23e1c6882245e75f09 to your computer and use it in GitHub Desktop.
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.7+commit.e28d00a7.js&optimize=false&runs=200&gist=
REMIX DEFAULT WORKSPACE
Remix default workspace is present when:
i. Remix loads for the very first time
ii. A new workspace is created with 'Default' template
iii. There are no files existing in the File Explorer
This workspace contains 3 directories:
1. 'contracts': Holds three contracts with increasing levels of complexity.
2. 'scripts': Contains four typescript files to deploy a contract. It is explained below.
3. 'tests': Contains one Solidity test file for 'Ballot' contract & one JS test file for 'Storage' contract.
SCRIPTS
The 'scripts' folder has four typescript files which help to deploy the 'Storage' contract using 'web3.js' and 'ethers.js' libraries.
For the deployment of any other contract, just update the contract's name from 'Storage' to the desired contract and provide constructor arguments accordingly
in the file `deploy_with_ethers.ts` or `deploy_with_web3.ts`
In the 'tests' folder there is a script containing Mocha-Chai unit tests for 'Storage' contract.
To run a script, right click on file name in the file explorer and click 'Run'. Remember, Solidity file must already be compiled.
Output from script will appear in remix terminal.
Please note, require/import is supported in a limited manner for Remix supported modules.
For now, modules supported by Remix are ethers, web3, swarmgw, chai, multihashes, remix and hardhat only for hardhat.ethers object/plugin.
For unsupported modules, an error like this will be thrown: '<module_name> module require is not supported by Remix IDE' will be shown.
{
"id": "2772d0ad401229cbbb720917d8bf1db3",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.7",
"solcLongVersion": "0.8.7+commit.e28d00a7",
"input": {
"language": "Solidity",
"sources": {
"contracts/first_contract.sol": {
"content": "// SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.4;\r\n\r\ncontract variables_modifiers {\r\n\r\n // Value intenger (uint)\r\n // Reserved uint8 a uint256\r\n // Default 256 \r\n uint256 a;\r\n uint8 public b = 3;\r\n\r\n}"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/first_contract.sol": {
"variables_modifiers": {
"abi": [
{
"inputs": [],
"name": "b",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/first_contract.sol\":60:222 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n /* \"contracts/first_contract.sol\":215:216 3 */\n 0x03\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n 0x01\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0xff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":60:222 contract variables_modifiers {\r... */\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/first_contract.sol\":60:222 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x4df7e3d0\n eq\n tag_3\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n tag_3:\n tag_4\n tag_5\n jump\t// in\n tag_4:\n mload(0x40)\n tag_6\n swap2\n swap1\n tag_7\n jump\t// in\n tag_6:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n tag_5:\n 0x01\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"#utility.yul\":7:119 */\n tag_9:\n /* \"#utility.yul\":90:112 */\n tag_11\n /* \"#utility.yul\":106:111 */\n dup2\n /* \"#utility.yul\":90:112 */\n tag_12\n jump\t// in\n tag_11:\n /* \"#utility.yul\":85:88 */\n dup3\n /* \"#utility.yul\":78:113 */\n mstore\n /* \"#utility.yul\":7:119 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":125:339 */\n tag_7:\n /* \"#utility.yul\":214:218 */\n 0x00\n /* \"#utility.yul\":252:254 */\n 0x20\n /* \"#utility.yul\":241:250 */\n dup3\n /* \"#utility.yul\":237:255 */\n add\n /* \"#utility.yul\":229:255 */\n swap1\n pop\n /* \"#utility.yul\":265:332 */\n tag_14\n /* \"#utility.yul\":329:330 */\n 0x00\n /* \"#utility.yul\":318:327 */\n dup4\n /* \"#utility.yul\":314:331 */\n add\n /* \"#utility.yul\":305:311 */\n dup5\n /* \"#utility.yul\":265:332 */\n tag_9\n jump\t// in\n tag_14:\n /* \"#utility.yul\":125:339 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":345:431 */\n tag_12:\n /* \"#utility.yul\":380:387 */\n 0x00\n /* \"#utility.yul\":420:424 */\n 0xff\n /* \"#utility.yul\":413:418 */\n dup3\n /* \"#utility.yul\":409:425 */\n and\n /* \"#utility.yul\":398:425 */\n swap1\n pop\n /* \"#utility.yul\":345:431 */\n swap2\n swap1\n pop\n jump\t// out\n\n auxdata: 0xa26469706673582212202860b2ce805dfbb4006ad0976c1dc0c3cf0268d1a0e13ef7667dc50cd2b829a164736f6c63430008070033\n}\n",
"bytecode": {
"functionDebugData": {},
"generatedSources": [],
"linkReferences": {},
"object": "60806040526003600160006101000a81548160ff021916908360ff16021790555034801561002c57600080fd5b5060c38061003b6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80634df7e3d014602d575b600080fd5b60336047565b604051603e91906067565b60405180910390f35b600160009054906101000a900460ff1681565b6061816080565b82525050565b6000602082019050607a6000830184605a565b92915050565b600060ff8216905091905056fea26469706673582212202860b2ce805dfbb4006ad0976c1dc0c3cf0268d1a0e13ef7667dc50cd2b829a164736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x3 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP CALLVALUE DUP1 ISZERO PUSH2 0x2C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0xC3 DUP1 PUSH2 0x3B PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH1 0xF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH1 0x28 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x4DF7E3D0 EQ PUSH1 0x2D JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x33 PUSH1 0x47 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x3E SWAP2 SWAP1 PUSH1 0x67 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x61 DUP2 PUSH1 0x80 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x7A PUSH1 0x0 DUP4 ADD DUP5 PUSH1 0x5A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x28 PUSH1 0xB2 0xCE DUP1 0x5D 0xFB 0xB4 STOP PUSH11 0xD0976C1DC0C3CF0268D1A0 0xE1 RETURNDATACOPY 0xF7 PUSH7 0x7DC50CD2B829A1 PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ",
"sourceMap": "60:162:0:-:0;;;215:1;198:18;;;;;;;;;;;;;;;;;;;;60:162;;;;;;;;;;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@b_6": {
"entryPoint": 71,
"id": 6,
"parameterSlots": 0,
"returnSlots": 0
},
"abi_encode_t_uint8_to_t_uint8_fromStack": {
"entryPoint": 90,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed": {
"entryPoint": 103,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_uint8": {
"entryPoint": 128,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:434:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "68:51:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "85:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "106:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint8",
"nodeType": "YulIdentifier",
"src": "90:15:1"
},
"nodeType": "YulFunctionCall",
"src": "90:22:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "78:6:1"
},
"nodeType": "YulFunctionCall",
"src": "78:35:1"
},
"nodeType": "YulExpressionStatement",
"src": "78:35:1"
}
]
},
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "56:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "63:3:1",
"type": ""
}
],
"src": "7:112:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "219:120:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "229:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "241:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "252:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "237:3:1"
},
"nodeType": "YulFunctionCall",
"src": "237:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "229:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "305:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "318:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "329:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "314:3:1"
},
"nodeType": "YulFunctionCall",
"src": "314:17:1"
}
],
"functionName": {
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nodeType": "YulIdentifier",
"src": "265:39:1"
},
"nodeType": "YulFunctionCall",
"src": "265:67:1"
},
"nodeType": "YulExpressionStatement",
"src": "265:67:1"
}
]
},
"name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "191:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "203:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "214:4:1",
"type": ""
}
],
"src": "125:214:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "388:43:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "398:27:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "413:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "420:4:1",
"type": "",
"value": "0xff"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "409:3:1"
},
"nodeType": "YulFunctionCall",
"src": "409:16:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "398:7:1"
}
]
}
]
},
"name": "cleanup_t_uint8",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "370:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "380:7:1",
"type": ""
}
],
"src": "345:86:1"
}
]
},
"contents": "{\n\n function abi_encode_t_uint8_to_t_uint8_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint8(value))\n }\n\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint8_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "6080604052348015600f57600080fd5b506004361060285760003560e01c80634df7e3d014602d575b600080fd5b60336047565b604051603e91906067565b60405180910390f35b600160009054906101000a900460ff1681565b6061816080565b82525050565b6000602082019050607a6000830184605a565b92915050565b600060ff8216905091905056fea26469706673582212202860b2ce805dfbb4006ad0976c1dc0c3cf0268d1a0e13ef7667dc50cd2b829a164736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH1 0xF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH1 0x28 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x4DF7E3D0 EQ PUSH1 0x2D JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x33 PUSH1 0x47 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x3E SWAP2 SWAP1 PUSH1 0x67 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x61 DUP2 PUSH1 0x80 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x7A PUSH1 0x0 DUP4 ADD DUP5 PUSH1 0x5A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x28 PUSH1 0xB2 0xCE DUP1 0x5D 0xFB 0xB4 STOP PUSH11 0xD0976C1DC0C3CF0268D1A0 0xE1 RETURNDATACOPY 0xF7 PUSH7 0x7DC50CD2B829A1 PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ",
"sourceMap": "60:162:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;198:18;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:112:1:-;90:22;106:5;90:22;:::i;:::-;85:3;78:35;7:112;;:::o;125:214::-;214:4;252:2;241:9;237:18;229:26;;265:67;329:1;318:9;314:17;305:6;265:67;:::i;:::-;125:214;;;;:::o;345:86::-;380:7;420:4;413:5;409:16;398:27;;345:86;;;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "39000",
"executionCost": "24360",
"totalCost": "63360"
},
"external": {
"b()": "2449"
}
},
"legacyAssembly": {
".code": [
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 222,
"name": "MSTORE",
"source": 0
},
{
"begin": 215,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "3"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 198,
"end": 216,
"name": "EXP",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "NOT",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP4",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "OR",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SSTORE",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 222,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 222,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "REVERT",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 222,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 222,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 222,
"name": "CODECOPY",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 222,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a26469706673582212202860b2ce805dfbb4006ad0976c1dc0c3cf0268d1a0e13ef7667dc50cd2b829a164736f6c63430008070033",
".code": [
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 222,
"name": "MSTORE",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 222,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 222,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "REVERT",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 222,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 60,
"end": 222,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "LT",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 222,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 222,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 60,
"end": 222,
"name": "SHR",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "4DF7E3D0"
},
{
"begin": 60,
"end": 222,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 60,
"end": 222,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 222,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 222,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 222,
"name": "REVERT",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 198,
"end": 216,
"name": "MLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 198,
"end": 216,
"name": "SWAP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 198,
"end": 216,
"name": "MLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SUB",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "RETURN",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 198,
"end": 216,
"name": "EXP",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DIV",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 7,
"end": 119,
"name": "tag",
"source": 1,
"value": "9"
},
{
"begin": 7,
"end": 119,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 90,
"end": 112,
"name": "PUSH [tag]",
"source": 1,
"value": "11"
},
{
"begin": 106,
"end": 111,
"name": "DUP2",
"source": 1
},
{
"begin": 90,
"end": 112,
"name": "PUSH [tag]",
"source": 1,
"value": "12"
},
{
"begin": 90,
"end": 112,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 90,
"end": 112,
"name": "tag",
"source": 1,
"value": "11"
},
{
"begin": 90,
"end": 112,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 85,
"end": 88,
"name": "DUP3",
"source": 1
},
{
"begin": 78,
"end": 113,
"name": "MSTORE",
"source": 1
},
{
"begin": 7,
"end": 119,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 119,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 119,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 125,
"end": 339,
"name": "tag",
"source": 1,
"value": "7"
},
{
"begin": 125,
"end": 339,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 214,
"end": 218,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 252,
"end": 254,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 241,
"end": 250,
"name": "DUP3",
"source": 1
},
{
"begin": 237,
"end": 255,
"name": "ADD",
"source": 1
},
{
"begin": 229,
"end": 255,
"name": "SWAP1",
"source": 1
},
{
"begin": 229,
"end": 255,
"name": "POP",
"source": 1
},
{
"begin": 265,
"end": 332,
"name": "PUSH [tag]",
"source": 1,
"value": "14"
},
{
"begin": 329,
"end": 330,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 318,
"end": 327,
"name": "DUP4",
"source": 1
},
{
"begin": 314,
"end": 331,
"name": "ADD",
"source": 1
},
{
"begin": 305,
"end": 311,
"name": "DUP5",
"source": 1
},
{
"begin": 265,
"end": 332,
"name": "PUSH [tag]",
"source": 1,
"value": "9"
},
{
"begin": 265,
"end": 332,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 265,
"end": 332,
"name": "tag",
"source": 1,
"value": "14"
},
{
"begin": 265,
"end": 332,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 125,
"end": 339,
"name": "SWAP3",
"source": 1
},
{
"begin": 125,
"end": 339,
"name": "SWAP2",
"source": 1
},
{
"begin": 125,
"end": 339,
"name": "POP",
"source": 1
},
{
"begin": 125,
"end": 339,
"name": "POP",
"source": 1
},
{
"begin": 125,
"end": 339,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 345,
"end": 431,
"name": "tag",
"source": 1,
"value": "12"
},
{
"begin": 345,
"end": 431,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 380,
"end": 387,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 420,
"end": 424,
"name": "PUSH",
"source": 1,
"value": "FF"
},
{
"begin": 413,
"end": 418,
"name": "DUP3",
"source": 1
},
{
"begin": 409,
"end": 425,
"name": "AND",
"source": 1
},
{
"begin": 398,
"end": 425,
"name": "SWAP1",
"source": 1
},
{
"begin": 398,
"end": 425,
"name": "POP",
"source": 1
},
{
"begin": 345,
"end": 431,
"name": "SWAP2",
"source": 1
},
{
"begin": 345,
"end": 431,
"name": "SWAP1",
"source": 1
},
{
"begin": 345,
"end": 431,
"name": "POP",
"source": 1
},
{
"begin": 345,
"end": 431,
"name": "JUMP",
"source": 1,
"value": "[out]"
}
]
}
}
},
"methodIdentifiers": {
"b()": "4df7e3d0"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"b\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/first_contract.sol\":\"variables_modifiers\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/first_contract.sol\":{\"keccak256\":\"0x02bcddfb882bf6251805736e2fb483258a0c31a44024e8fa1ecc85b7d9bbe114\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a269cb4eddfe02937bad4dc69567143e19271fe478e155a98c78c8c43871cf6b\",\"dweb:/ipfs/Qmd2db3vNgjywJB94cQWtLoqGtQgXTYxMFn7PVgN1z2Lyb\"]}},\"version\":1}",
"storageLayout": {
"storage": [
{
"astId": 3,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "a",
"offset": 0,
"slot": "0",
"type": "t_uint256"
},
{
"astId": 6,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "b",
"offset": 0,
"slot": "1",
"type": "t_uint8"
}
],
"types": {
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
},
"t_uint8": {
"encoding": "inplace",
"label": "uint8",
"numberOfBytes": "1"
}
}
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
}
}
},
"sources": {
"contracts/first_contract.sol": {
"ast": {
"absolutePath": "contracts/first_contract.sol",
"exportedSymbols": {
"variables_modifiers": [
7
]
},
"id": 8,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1,
"literals": [
"solidity",
"^",
"0.8",
".4"
],
"nodeType": "PragmaDirective",
"src": "33:23:0"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"fullyImplemented": true,
"id": 7,
"linearizedBaseContracts": [
7
],
"name": "variables_modifiers",
"nameLocation": "69:19:0",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 3,
"mutability": "mutable",
"name": "a",
"nameLocation": "190:1:0",
"nodeType": "VariableDeclaration",
"scope": 7,
"src": "182:9:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "182:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"functionSelector": "4df7e3d0",
"id": 6,
"mutability": "mutable",
"name": "b",
"nameLocation": "211:1:0",
"nodeType": "VariableDeclaration",
"scope": 7,
"src": "198:18:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
},
"typeName": {
"id": 4,
"name": "uint8",
"nodeType": "ElementaryTypeName",
"src": "198:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
}
},
"value": {
"hexValue": "33",
"id": 5,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "215:1:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_3_by_1",
"typeString": "int_const 3"
},
"value": "3"
},
"visibility": "public"
}
],
"scope": 8,
"src": "60:162:0",
"usedErrors": []
}
],
"src": "33:189:0"
},
"id": 0
}
}
}
}
{
"id": "29f8fc3b7a82acb9d63f8e1a9759ee1c",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.7",
"solcLongVersion": "0.8.7+commit.e28d00a7",
"input": {
"language": "Solidity",
"sources": {
"contracts/first_contract.sol": {
"content": "// SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.4;\r\n\r\ncontract variables_modifiers {\r\n\r\n // Value intenger (uint)\r\n // Reserved uint8 a uint256\r\n // Default 256 \r\n uint256 a;\r\n uint8 public b = 3;\r\n\r\n // Value integer sig\r\n int256 c;\r\n int8 d = -32;\r\n int e = 65;\r\n\r\n // String \r\n string str;\r\n string public str_public = \"String public\";\r\n string private str_private = \"String Private\";\r\n\r\n //Boolean\r\n bool boolean;\r\n bool public bool_true = true;\r\n bool private bool_false = false;\r\n\r\n //bytes\r\n bytes32 first_bytes;\r\n bytes4 second_bytes;\r\n bytes1 byte_one;\r\n\r\n // Algoritmo hash\r\n bytes32 public hashing = keccak256(abi.encodePacked(\"Hello word\"));\r\n\r\n}"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/first_contract.sol": {
"variables_modifiers": {
"abi": [
{
"inputs": [],
"name": "b",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "bool_true",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "hashing",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "str_public",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/first_contract.sol\":60:733 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n /* \"contracts/first_contract.sol\":215:216 3 */\n 0x03\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n 0x01\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0xff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":275:278 -32 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0\n /* \"contracts/first_contract.sol\":266:278 int8 d = -32 */\n 0x03\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0x00\n signextend\n 0xff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":293:295 65 */\n 0x41\n /* \"contracts/first_contract.sol\":285:295 int e = 65 */\n 0x04\n sstore\n /* \"contracts/first_contract.sol\":337:379 string public str_public = \"String public\" */\n mload(0x40)\n dup1\n 0x40\n add\n 0x40\n mstore\n dup1\n 0x0d\n dup2\n mstore\n 0x20\n add\n 0x537472696e67207075626c696300000000000000000000000000000000000000\n dup2\n mstore\n pop\n 0x06\n swap1\n dup1\n mload\n swap1\n 0x20\n add\n swap1\n tag_1\n swap3\n swap2\n swap1\n tag_2\n jump\t// in\ntag_1:\n pop\n /* \"contracts/first_contract.sol\":386:431 string private str_private = \"String Private\" */\n mload(0x40)\n dup1\n 0x40\n add\n 0x40\n mstore\n dup1\n 0x0e\n dup2\n mstore\n 0x20\n add\n 0x537472696e672050726976617465000000000000000000000000000000000000\n dup2\n mstore\n pop\n 0x07\n swap1\n dup1\n mload\n swap1\n 0x20\n add\n swap1\n tag_3\n swap3\n swap2\n swap1\n tag_2\n jump\t// in\ntag_3:\n pop\n /* \"contracts/first_contract.sol\":498:502 true */\n 0x01\n /* \"contracts/first_contract.sol\":474:502 bool public bool_true = true */\n 0x08\n exp(0x0100, 0x01)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n iszero\n iszero\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":535:540 false */\n 0x00\n /* \"contracts/first_contract.sol\":509:540 bool private bool_false = false */\n 0x08\n exp(0x0100, 0x02)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n iszero\n iszero\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":696:726 abi.encodePacked(\"Hello word\") */\n add(0x20, mload(0x40))\n tag_4\n swap1\n tag_5\n jump\t// in\ntag_4:\n mload(0x40)\n 0x20\n dup2\n dup4\n sub\n sub\n dup2\n mstore\n swap1\n 0x40\n mstore\n /* \"contracts/first_contract.sol\":686:727 keccak256(abi.encodePacked(\"Hello word\")) */\n dup1\n mload\n swap1\n 0x20\n add\n keccak256\n /* \"contracts/first_contract.sol\":661:727 bytes32 public hashing = keccak256(abi.encodePacked(\"Hello word\")) */\n 0x0b\n sstore\n /* \"contracts/first_contract.sol\":60:733 contract variables_modifiers {\r... */\n callvalue\n dup1\n iszero\n tag_6\n jumpi\n 0x00\n dup1\n revert\ntag_6:\n pop\n jump(tag_7)\ntag_2:\n dup3\n dup1\n sload\n tag_8\n swap1\n tag_9\n jump\t// in\ntag_8:\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n 0x1f\n add\n 0x20\n swap1\n div\n dup2\n add\n swap3\n dup3\n tag_11\n jumpi\n 0x00\n dup6\n sstore\n jump(tag_10)\ntag_11:\n dup3\n 0x1f\n lt\n tag_12\n jumpi\n dup1\n mload\n not(0xff)\n and\n dup4\n dup1\n add\n or\n dup6\n sstore\n jump(tag_10)\ntag_12:\n dup3\n dup1\n add\n 0x01\n add\n dup6\n sstore\n dup3\n iszero\n tag_10\n jumpi\n swap2\n dup3\n add\ntag_13:\n dup3\n dup2\n gt\n iszero\n tag_14\n jumpi\n dup3\n mload\n dup3\n sstore\n swap2\n 0x20\n add\n swap2\n swap1\n 0x01\n add\n swap1\n jump(tag_13)\ntag_14:\ntag_10:\n pop\n swap1\n pop\n tag_15\n swap2\n swap1\n tag_16\n jump\t// in\ntag_15:\n pop\n swap1\n jump\t// out\ntag_16:\ntag_17:\n dup1\n dup3\n gt\n iszero\n tag_18\n jumpi\n 0x00\n dup2\n 0x00\n swap1\n sstore\n pop\n 0x01\n add\n jump(tag_17)\ntag_18:\n pop\n swap1\n jump\t// out\n /* \"#utility.yul\":7:409 */\ntag_20:\n /* \"#utility.yul\":167:170 */\n 0x00\n /* \"#utility.yul\":188:273 */\n tag_22\n /* \"#utility.yul\":270:272 */\n 0x0a\n /* \"#utility.yul\":265:268 */\n dup4\n /* \"#utility.yul\":188:273 */\n tag_23\n jump\t// in\ntag_22:\n /* \"#utility.yul\":181:273 */\n swap2\n pop\n /* \"#utility.yul\":282:375 */\n tag_24\n /* \"#utility.yul\":371:374 */\n dup3\n /* \"#utility.yul\":282:375 */\n tag_25\n jump\t// in\ntag_24:\n /* \"#utility.yul\":400:402 */\n 0x0a\n /* \"#utility.yul\":395:398 */\n dup3\n /* \"#utility.yul\":391:403 */\n add\n /* \"#utility.yul\":384:403 */\n swap1\n pop\n /* \"#utility.yul\":7:409 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":415:796 */\ntag_5:\n /* \"#utility.yul\":600:603 */\n 0x00\n /* \"#utility.yul\":622:770 */\n tag_27\n /* \"#utility.yul\":766:769 */\n dup3\n /* \"#utility.yul\":622:770 */\n tag_20\n jump\t// in\ntag_27:\n /* \"#utility.yul\":615:770 */\n swap2\n pop\n /* \"#utility.yul\":787:790 */\n dup2\n /* \"#utility.yul\":780:790 */\n swap1\n pop\n /* \"#utility.yul\":415:796 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":802:950 */\ntag_23:\n /* \"#utility.yul\":904:915 */\n 0x00\n /* \"#utility.yul\":941:944 */\n dup2\n /* \"#utility.yul\":926:944 */\n swap1\n pop\n /* \"#utility.yul\":802:950 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":956:1276 */\ntag_9:\n /* \"#utility.yul\":1000:1006 */\n 0x00\n /* \"#utility.yul\":1037:1038 */\n 0x02\n /* \"#utility.yul\":1031:1035 */\n dup3\n /* \"#utility.yul\":1027:1039 */\n div\n /* \"#utility.yul\":1017:1039 */\n swap1\n pop\n /* \"#utility.yul\":1084:1085 */\n 0x01\n /* \"#utility.yul\":1078:1082 */\n dup3\n /* \"#utility.yul\":1074:1086 */\n and\n /* \"#utility.yul\":1105:1123 */\n dup1\n /* \"#utility.yul\":1095:1176 */\n tag_30\n jumpi\n /* \"#utility.yul\":1161:1165 */\n 0x7f\n /* \"#utility.yul\":1153:1159 */\n dup3\n /* \"#utility.yul\":1149:1166 */\n and\n /* \"#utility.yul\":1139:1166 */\n swap2\n pop\n /* \"#utility.yul\":1095:1176 */\ntag_30:\n /* \"#utility.yul\":1223:1225 */\n 0x20\n /* \"#utility.yul\":1215:1221 */\n dup3\n /* \"#utility.yul\":1212:1226 */\n lt\n /* \"#utility.yul\":1192:1210 */\n dup2\n /* \"#utility.yul\":1189:1227 */\n eq\n /* \"#utility.yul\":1186:1270 */\n iszero\n tag_31\n jumpi\n /* \"#utility.yul\":1242:1260 */\n tag_32\n tag_33\n jump\t// in\ntag_32:\n /* \"#utility.yul\":1186:1270 */\ntag_31:\n /* \"#utility.yul\":1007:1276 */\n pop\n /* \"#utility.yul\":956:1276 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1282:1462 */\ntag_33:\n /* \"#utility.yul\":1330:1407 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":1327:1328 */\n 0x00\n /* \"#utility.yul\":1320:1408 */\n mstore\n /* \"#utility.yul\":1427:1431 */\n 0x22\n /* \"#utility.yul\":1424:1425 */\n 0x04\n /* \"#utility.yul\":1417:1432 */\n mstore\n /* \"#utility.yul\":1451:1455 */\n 0x24\n /* \"#utility.yul\":1448:1449 */\n 0x00\n /* \"#utility.yul\":1441:1456 */\n revert\n /* \"#utility.yul\":1468:1628 */\ntag_25:\n /* \"#utility.yul\":1608:1620 */\n 0x48656c6c6f20776f726400000000000000000000000000000000000000000000\n /* \"#utility.yul\":1604:1605 */\n 0x00\n /* \"#utility.yul\":1596:1602 */\n dup3\n /* \"#utility.yul\":1592:1606 */\n add\n /* \"#utility.yul\":1585:1621 */\n mstore\n /* \"#utility.yul\":1468:1628 */\n pop\n jump\t// out\n /* \"contracts/first_contract.sol\":60:733 contract variables_modifiers {\r... */\ntag_7:\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/first_contract.sol\":60:733 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x4df7e3d0\n eq\n tag_3\n jumpi\n dup1\n 0x5760fa05\n eq\n tag_4\n jumpi\n dup1\n 0xb83d07b7\n eq\n tag_5\n jumpi\n dup1\n 0xcd97d84e\n eq\n tag_6\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n tag_3:\n tag_7\n tag_8\n jump\t// in\n tag_7:\n mload(0x40)\n tag_9\n swap2\n swap1\n tag_10\n jump\t// in\n tag_9:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":474:502 bool public bool_true = true */\n tag_4:\n tag_11\n tag_12\n jump\t// in\n tag_11:\n mload(0x40)\n tag_13\n swap2\n swap1\n tag_14\n jump\t// in\n tag_13:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":337:379 string public str_public = \"String public\" */\n tag_5:\n tag_15\n tag_16\n jump\t// in\n tag_15:\n mload(0x40)\n tag_17\n swap2\n swap1\n tag_18\n jump\t// in\n tag_17:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":661:727 bytes32 public hashing = keccak256(abi.encodePacked(\"Hello word\")) */\n tag_6:\n tag_19\n tag_20\n jump\t// in\n tag_19:\n mload(0x40)\n tag_21\n swap2\n swap1\n tag_22\n jump\t// in\n tag_21:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n tag_8:\n 0x01\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":474:502 bool public bool_true = true */\n tag_12:\n 0x08\n 0x01\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":337:379 string public str_public = \"String public\" */\n tag_16:\n 0x06\n dup1\n sload\n tag_23\n swap1\n tag_24\n jump\t// in\n tag_23:\n dup1\n 0x1f\n add\n 0x20\n dup1\n swap2\n div\n mul\n 0x20\n add\n mload(0x40)\n swap1\n dup2\n add\n 0x40\n mstore\n dup1\n swap3\n swap2\n swap1\n dup2\n dup2\n mstore\n 0x20\n add\n dup3\n dup1\n sload\n tag_25\n swap1\n tag_24\n jump\t// in\n tag_25:\n dup1\n iszero\n tag_26\n jumpi\n dup1\n 0x1f\n lt\n tag_27\n jumpi\n 0x0100\n dup1\n dup4\n sload\n div\n mul\n dup4\n mstore\n swap2\n 0x20\n add\n swap2\n jump(tag_26)\n tag_27:\n dup3\n add\n swap2\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n tag_28:\n dup2\n sload\n dup2\n mstore\n swap1\n 0x01\n add\n swap1\n 0x20\n add\n dup1\n dup4\n gt\n tag_28\n jumpi\n dup3\n swap1\n sub\n 0x1f\n and\n dup3\n add\n swap2\n tag_26:\n pop\n pop\n pop\n pop\n pop\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":661:727 bytes32 public hashing = keccak256(abi.encodePacked(\"Hello word\")) */\n tag_20:\n sload(0x0b)\n dup2\n jump\t// out\n /* \"#utility.yul\":7:116 */\n tag_30:\n /* \"#utility.yul\":88:109 */\n tag_32\n /* \"#utility.yul\":103:108 */\n dup2\n /* \"#utility.yul\":88:109 */\n tag_33\n jump\t// in\n tag_32:\n /* \"#utility.yul\":83:86 */\n dup3\n /* \"#utility.yul\":76:110 */\n mstore\n /* \"#utility.yul\":7:116 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":122:240 */\n tag_34:\n /* \"#utility.yul\":209:233 */\n tag_36\n /* \"#utility.yul\":227:232 */\n dup2\n /* \"#utility.yul\":209:233 */\n tag_37\n jump\t// in\n tag_36:\n /* \"#utility.yul\":204:207 */\n dup3\n /* \"#utility.yul\":197:234 */\n mstore\n /* \"#utility.yul\":122:240 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":246:610 */\n tag_38:\n /* \"#utility.yul\":334:337 */\n 0x00\n /* \"#utility.yul\":362:401 */\n tag_40\n /* \"#utility.yul\":395:400 */\n dup3\n /* \"#utility.yul\":362:401 */\n tag_41\n jump\t// in\n tag_40:\n /* \"#utility.yul\":417:488 */\n tag_42\n /* \"#utility.yul\":481:487 */\n dup2\n /* \"#utility.yul\":476:479 */\n dup6\n /* \"#utility.yul\":417:488 */\n tag_43\n jump\t// in\n tag_42:\n /* \"#utility.yul\":410:488 */\n swap4\n pop\n /* \"#utility.yul\":497:549 */\n tag_44\n /* \"#utility.yul\":542:548 */\n dup2\n /* \"#utility.yul\":537:540 */\n dup6\n /* \"#utility.yul\":530:534 */\n 0x20\n /* \"#utility.yul\":523:528 */\n dup7\n /* \"#utility.yul\":519:535 */\n add\n /* \"#utility.yul\":497:549 */\n tag_45\n jump\t// in\n tag_44:\n /* \"#utility.yul\":574:603 */\n tag_46\n /* \"#utility.yul\":596:602 */\n dup2\n /* \"#utility.yul\":574:603 */\n tag_47\n jump\t// in\n tag_46:\n /* \"#utility.yul\":569:572 */\n dup5\n /* \"#utility.yul\":565:604 */\n add\n /* \"#utility.yul\":558:604 */\n swap2\n pop\n /* \"#utility.yul\":338:610 */\n pop\n /* \"#utility.yul\":246:610 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":616:728 */\n tag_48:\n /* \"#utility.yul\":699:721 */\n tag_50\n /* \"#utility.yul\":715:720 */\n dup2\n /* \"#utility.yul\":699:721 */\n tag_51\n jump\t// in\n tag_50:\n /* \"#utility.yul\":694:697 */\n dup3\n /* \"#utility.yul\":687:722 */\n mstore\n /* \"#utility.yul\":616:728 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":734:944 */\n tag_14:\n /* \"#utility.yul\":821:825 */\n 0x00\n /* \"#utility.yul\":859:861 */\n 0x20\n /* \"#utility.yul\":848:857 */\n dup3\n /* \"#utility.yul\":844:862 */\n add\n /* \"#utility.yul\":836:862 */\n swap1\n pop\n /* \"#utility.yul\":872:937 */\n tag_53\n /* \"#utility.yul\":934:935 */\n 0x00\n /* \"#utility.yul\":923:932 */\n dup4\n /* \"#utility.yul\":919:936 */\n add\n /* \"#utility.yul\":910:916 */\n dup5\n /* \"#utility.yul\":872:937 */\n tag_30\n jump\t// in\n tag_53:\n /* \"#utility.yul\":734:944 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":950:1172 */\n tag_22:\n /* \"#utility.yul\":1043:1047 */\n 0x00\n /* \"#utility.yul\":1081:1083 */\n 0x20\n /* \"#utility.yul\":1070:1079 */\n dup3\n /* \"#utility.yul\":1066:1084 */\n add\n /* \"#utility.yul\":1058:1084 */\n swap1\n pop\n /* \"#utility.yul\":1094:1165 */\n tag_55\n /* \"#utility.yul\":1162:1163 */\n 0x00\n /* \"#utility.yul\":1151:1160 */\n dup4\n /* \"#utility.yul\":1147:1164 */\n add\n /* \"#utility.yul\":1138:1144 */\n dup5\n /* \"#utility.yul\":1094:1165 */\n tag_34\n jump\t// in\n tag_55:\n /* \"#utility.yul\":950:1172 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1178:1491 */\n tag_18:\n /* \"#utility.yul\":1291:1295 */\n 0x00\n /* \"#utility.yul\":1329:1331 */\n 0x20\n /* \"#utility.yul\":1318:1327 */\n dup3\n /* \"#utility.yul\":1314:1332 */\n add\n /* \"#utility.yul\":1306:1332 */\n swap1\n pop\n /* \"#utility.yul\":1378:1387 */\n dup2\n /* \"#utility.yul\":1372:1376 */\n dup2\n /* \"#utility.yul\":1368:1388 */\n sub\n /* \"#utility.yul\":1364:1365 */\n 0x00\n /* \"#utility.yul\":1353:1362 */\n dup4\n /* \"#utility.yul\":1349:1366 */\n add\n /* \"#utility.yul\":1342:1389 */\n mstore\n /* \"#utility.yul\":1406:1484 */\n tag_57\n /* \"#utility.yul\":1479:1483 */\n dup2\n /* \"#utility.yul\":1470:1476 */\n dup5\n /* \"#utility.yul\":1406:1484 */\n tag_38\n jump\t// in\n tag_57:\n /* \"#utility.yul\":1398:1484 */\n swap1\n pop\n /* \"#utility.yul\":1178:1491 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1497:1711 */\n tag_10:\n /* \"#utility.yul\":1586:1590 */\n 0x00\n /* \"#utility.yul\":1624:1626 */\n 0x20\n /* \"#utility.yul\":1613:1622 */\n dup3\n /* \"#utility.yul\":1609:1627 */\n add\n /* \"#utility.yul\":1601:1627 */\n swap1\n pop\n /* \"#utility.yul\":1637:1704 */\n tag_59\n /* \"#utility.yul\":1701:1702 */\n 0x00\n /* \"#utility.yul\":1690:1699 */\n dup4\n /* \"#utility.yul\":1686:1703 */\n add\n /* \"#utility.yul\":1677:1683 */\n dup5\n /* \"#utility.yul\":1637:1704 */\n tag_48\n jump\t// in\n tag_59:\n /* \"#utility.yul\":1497:1711 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1717:1816 */\n tag_41:\n /* \"#utility.yul\":1769:1775 */\n 0x00\n /* \"#utility.yul\":1803:1808 */\n dup2\n /* \"#utility.yul\":1797:1809 */\n mload\n /* \"#utility.yul\":1787:1809 */\n swap1\n pop\n /* \"#utility.yul\":1717:1816 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1822:1991 */\n tag_43:\n /* \"#utility.yul\":1906:1917 */\n 0x00\n /* \"#utility.yul\":1940:1946 */\n dup3\n /* \"#utility.yul\":1935:1938 */\n dup3\n /* \"#utility.yul\":1928:1947 */\n mstore\n /* \"#utility.yul\":1980:1984 */\n 0x20\n /* \"#utility.yul\":1975:1978 */\n dup3\n /* \"#utility.yul\":1971:1985 */\n add\n /* \"#utility.yul\":1956:1985 */\n swap1\n pop\n /* \"#utility.yul\":1822:1991 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1997:2087 */\n tag_33:\n /* \"#utility.yul\":2031:2038 */\n 0x00\n /* \"#utility.yul\":2074:2079 */\n dup2\n /* \"#utility.yul\":2067:2080 */\n iszero\n /* \"#utility.yul\":2060:2081 */\n iszero\n /* \"#utility.yul\":2049:2081 */\n swap1\n pop\n /* \"#utility.yul\":1997:2087 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2093:2170 */\n tag_37:\n /* \"#utility.yul\":2130:2137 */\n 0x00\n /* \"#utility.yul\":2159:2164 */\n dup2\n /* \"#utility.yul\":2148:2164 */\n swap1\n pop\n /* \"#utility.yul\":2093:2170 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2176:2262 */\n tag_51:\n /* \"#utility.yul\":2211:2218 */\n 0x00\n /* \"#utility.yul\":2251:2255 */\n 0xff\n /* \"#utility.yul\":2244:2249 */\n dup3\n /* \"#utility.yul\":2240:2256 */\n and\n /* \"#utility.yul\":2229:2256 */\n swap1\n pop\n /* \"#utility.yul\":2176:2262 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2268:2575 */\n tag_45:\n /* \"#utility.yul\":2336:2337 */\n 0x00\n /* \"#utility.yul\":2346:2459 */\n tag_66:\n /* \"#utility.yul\":2360:2366 */\n dup4\n /* \"#utility.yul\":2357:2358 */\n dup2\n /* \"#utility.yul\":2354:2367 */\n lt\n /* \"#utility.yul\":2346:2459 */\n iszero\n tag_68\n jumpi\n /* \"#utility.yul\":2445:2446 */\n dup1\n /* \"#utility.yul\":2440:2443 */\n dup3\n /* \"#utility.yul\":2436:2447 */\n add\n /* \"#utility.yul\":2430:2448 */\n mload\n /* \"#utility.yul\":2426:2427 */\n dup2\n /* \"#utility.yul\":2421:2424 */\n dup5\n /* \"#utility.yul\":2417:2428 */\n add\n /* \"#utility.yul\":2410:2449 */\n mstore\n /* \"#utility.yul\":2382:2384 */\n 0x20\n /* \"#utility.yul\":2379:2380 */\n dup2\n /* \"#utility.yul\":2375:2385 */\n add\n /* \"#utility.yul\":2370:2385 */\n swap1\n pop\n /* \"#utility.yul\":2346:2459 */\n jump(tag_66)\n tag_68:\n /* \"#utility.yul\":2477:2483 */\n dup4\n /* \"#utility.yul\":2474:2475 */\n dup2\n /* \"#utility.yul\":2471:2484 */\n gt\n /* \"#utility.yul\":2468:2569 */\n iszero\n tag_69\n jumpi\n /* \"#utility.yul\":2557:2558 */\n 0x00\n /* \"#utility.yul\":2548:2554 */\n dup5\n /* \"#utility.yul\":2543:2546 */\n dup5\n /* \"#utility.yul\":2539:2555 */\n add\n /* \"#utility.yul\":2532:2559 */\n mstore\n /* \"#utility.yul\":2468:2569 */\n tag_69:\n /* \"#utility.yul\":2317:2575 */\n pop\n /* \"#utility.yul\":2268:2575 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2581:2901 */\n tag_24:\n /* \"#utility.yul\":2625:2631 */\n 0x00\n /* \"#utility.yul\":2662:2663 */\n 0x02\n /* \"#utility.yul\":2656:2660 */\n dup3\n /* \"#utility.yul\":2652:2664 */\n div\n /* \"#utility.yul\":2642:2664 */\n swap1\n pop\n /* \"#utility.yul\":2709:2710 */\n 0x01\n /* \"#utility.yul\":2703:2707 */\n dup3\n /* \"#utility.yul\":2699:2711 */\n and\n /* \"#utility.yul\":2730:2748 */\n dup1\n /* \"#utility.yul\":2720:2801 */\n tag_71\n jumpi\n /* \"#utility.yul\":2786:2790 */\n 0x7f\n /* \"#utility.yul\":2778:2784 */\n dup3\n /* \"#utility.yul\":2774:2791 */\n and\n /* \"#utility.yul\":2764:2791 */\n swap2\n pop\n /* \"#utility.yul\":2720:2801 */\n tag_71:\n /* \"#utility.yul\":2848:2850 */\n 0x20\n /* \"#utility.yul\":2840:2846 */\n dup3\n /* \"#utility.yul\":2837:2851 */\n lt\n /* \"#utility.yul\":2817:2835 */\n dup2\n /* \"#utility.yul\":2814:2852 */\n eq\n /* \"#utility.yul\":2811:2895 */\n iszero\n tag_72\n jumpi\n /* \"#utility.yul\":2867:2885 */\n tag_73\n tag_74\n jump\t// in\n tag_73:\n /* \"#utility.yul\":2811:2895 */\n tag_72:\n /* \"#utility.yul\":2632:2901 */\n pop\n /* \"#utility.yul\":2581:2901 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2907:3087 */\n tag_74:\n /* \"#utility.yul\":2955:3032 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":2952:2953 */\n 0x00\n /* \"#utility.yul\":2945:3033 */\n mstore\n /* \"#utility.yul\":3052:3056 */\n 0x22\n /* \"#utility.yul\":3049:3050 */\n 0x04\n /* \"#utility.yul\":3042:3057 */\n mstore\n /* \"#utility.yul\":3076:3080 */\n 0x24\n /* \"#utility.yul\":3073:3074 */\n 0x00\n /* \"#utility.yul\":3066:3081 */\n revert\n /* \"#utility.yul\":3093:3195 */\n tag_47:\n /* \"#utility.yul\":3134:3140 */\n 0x00\n /* \"#utility.yul\":3185:3187 */\n 0x1f\n /* \"#utility.yul\":3181:3188 */\n not\n /* \"#utility.yul\":3176:3178 */\n 0x1f\n /* \"#utility.yul\":3169:3174 */\n dup4\n /* \"#utility.yul\":3165:3179 */\n add\n /* \"#utility.yul\":3161:3189 */\n and\n /* \"#utility.yul\":3151:3189 */\n swap1\n pop\n /* \"#utility.yul\":3093:3195 */\n swap2\n swap1\n pop\n jump\t// out\n\n auxdata: 0xa2646970667358221220bdd86ebca58bb99e6cea173f0d0eee29144e083548e11b43bd0c11a0f3af63c164736f6c63430008070033\n}\n",
"bytecode": {
"functionDebugData": {
"abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack": {
"entryPoint": 526,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_packed_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": {
"entryPoint": 561,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack": {
"entryPoint": 582,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"extract_byte_array_length": {
"entryPoint": 593,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x22": {
"entryPoint": 643,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785": {
"entryPoint": 690,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:1631:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "171:238:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "181:92:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "265:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "270:2:1",
"type": "",
"value": "10"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulIdentifier",
"src": "188:76:1"
},
"nodeType": "YulFunctionCall",
"src": "188:85:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "181:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "371:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785",
"nodeType": "YulIdentifier",
"src": "282:88:1"
},
"nodeType": "YulFunctionCall",
"src": "282:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "282:93:1"
},
{
"nodeType": "YulAssignment",
"src": "384:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "395:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "400:2:1",
"type": "",
"value": "10"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "391:3:1"
},
"nodeType": "YulFunctionCall",
"src": "391:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "384:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "159:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "167:3:1",
"type": ""
}
],
"src": "7:402:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "604:192:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "615:155:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "766:3:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulIdentifier",
"src": "622:142:1"
},
"nodeType": "YulFunctionCall",
"src": "622:148:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "615:3:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "780:10:1",
"value": {
"name": "pos",
"nodeType": "YulIdentifier",
"src": "787:3:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "780:3:1"
}
]
}
]
},
"name": "abi_encode_tuple_packed_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "591:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "600:3:1",
"type": ""
}
],
"src": "415:381:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "916:34:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "926:18:1",
"value": {
"name": "pos",
"nodeType": "YulIdentifier",
"src": "941:3:1"
},
"variableNames": [
{
"name": "updated_pos",
"nodeType": "YulIdentifier",
"src": "926:11:1"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "888:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "893:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nodeType": "YulTypedName",
"src": "904:11:1",
"type": ""
}
],
"src": "802:148:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1007:269:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1017:22:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "1031:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1037:1:1",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "1027:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1027:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1017:6:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "1048:38:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "1078:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1084:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "1074:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1074:12:1"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulTypedName",
"src": "1052:18:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "1125:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1139:27:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1153:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1161:4:1",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "1149:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1149:17:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1139:6:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "1105:18:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "1098:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1098:26:1"
},
"nodeType": "YulIf",
"src": "1095:81:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1228:42:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x22",
"nodeType": "YulIdentifier",
"src": "1242:16:1"
},
"nodeType": "YulFunctionCall",
"src": "1242:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "1242:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "1192:18:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1215:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1223:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "1212:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1212:14:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "1189:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1189:38:1"
},
"nodeType": "YulIf",
"src": "1186:84:1"
}
]
},
"name": "extract_byte_array_length",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "991:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "1000:6:1",
"type": ""
}
],
"src": "956:320:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1310:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1327:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1330:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1320:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1320:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "1320:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1424:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1427:4:1",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1417:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1417:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1417:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1448:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1451:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1441:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1441:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1441:15:1"
}
]
},
"name": "panic_error_0x22",
"nodeType": "YulFunctionDefinition",
"src": "1282:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1574:54:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "1596:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1604:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1592:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1592:14:1"
},
{
"hexValue": "48656c6c6f20776f7264",
"kind": "string",
"nodeType": "YulLiteral",
"src": "1608:12:1",
"type": "",
"value": "Hello word"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1585:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1585:36:1"
},
"nodeType": "YulExpressionStatement",
"src": "1585:36:1"
}
]
},
"name": "store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "1566:6:1",
"type": ""
}
],
"src": "1468:160:1"
}
]
},
"contents": "{\n\n function abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 10)\n store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785(pos)\n end := add(pos, 10)\n }\n\n function abi_encode_tuple_packed_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos ) -> end {\n\n pos := abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n end := pos\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785(memPtr) {\n\n mstore(add(memPtr, 0), \"Hello word\")\n\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"linkReferences": {},
"object": "60806040526003600160006101000a81548160ff021916908360ff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0600360006101000a81548160ff021916908360000b60ff16021790555060416004556040518060400160405280600d81526020017f537472696e67207075626c696300000000000000000000000000000000000000815250600690805190602001906100ae92919061016b565b506040518060400160405280600e81526020017f537472696e672050726976617465000000000000000000000000000000000000815250600790805190602001906100fa92919061016b565b506001600860016101000a81548160ff0219169083151502179055506000600860026101000a81548160ff02191690831515021790555060405160200161014090610231565b60405160208183030381529060405280519060200120600b5534801561016557600080fd5b506102db565b82805461017790610251565b90600052602060002090601f01602090048101928261019957600085556101e0565b82601f106101b257805160ff19168380011785556101e0565b828001600101855582156101e0579182015b828111156101df5782518255916020019190600101906101c4565b5b5090506101ed91906101f1565b5090565b5b8082111561020a5760008160009055506001016101f2565b5090565b600061021b600a83610246565b9150610226826102b2565b600a82019050919050565b600061023c8261020e565b9150819050919050565b600081905092915050565b6000600282049050600182168061026957607f821691505b6020821081141561027d5761027c610283565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f48656c6c6f20776f726400000000000000000000000000000000000000000000600082015250565b610376806102ea6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80634df7e3d0146100515780635760fa051461006f578063b83d07b71461008d578063cd97d84e146100ab575b600080fd5b6100596100c9565b6040516100669190610241565b60405180910390f35b6100776100dc565b60405161008491906101e9565b60405180910390f35b6100956100ef565b6040516100a2919061021f565b60405180910390f35b6100b361017d565b6040516100c09190610204565b60405180910390f35b600160009054906101000a900460ff1681565b600860019054906101000a900460ff1681565b600680546100fc906102ce565b80601f0160208091040260200160405190810160405280929190818152602001828054610128906102ce565b80156101755780601f1061014a57610100808354040283529160200191610175565b820191906000526020600020905b81548152906001019060200180831161015857829003601f168201915b505050505081565b600b5481565b61018c81610278565b82525050565b61019b81610284565b82525050565b60006101ac8261025c565b6101b68185610267565b93506101c681856020860161029b565b6101cf8161032f565b840191505092915050565b6101e38161028e565b82525050565b60006020820190506101fe6000830184610183565b92915050565b60006020820190506102196000830184610192565b92915050565b6000602082019050818103600083015261023981846101a1565b905092915050565b600060208201905061025660008301846101da565b92915050565b600081519050919050565b600082825260208201905092915050565b60008115159050919050565b6000819050919050565b600060ff82169050919050565b60005b838110156102b957808201518184015260208101905061029e565b838111156102c8576000848401525b50505050565b600060028204905060018216806102e657607f821691505b602082108114156102fa576102f9610300565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f830116905091905056fea2646970667358221220bdd86ebca58bb99e6cea173f0d0eee29144e083548e11b43bd0c11a0f3af63c164736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x3 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x3 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0x0 SIGNEXTEND PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x41 PUSH1 0x4 SSTORE PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xD DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x537472696E67207075626C696300000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x6 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xAE SWAP3 SWAP2 SWAP1 PUSH2 0x16B JUMP JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xE DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x537472696E672050726976617465000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x7 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xFA SWAP3 SWAP2 SWAP1 PUSH2 0x16B JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x8 PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x8 PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x140 SWAP1 PUSH2 0x231 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0xB SSTORE CALLVALUE DUP1 ISZERO PUSH2 0x165 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2DB JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x177 SWAP1 PUSH2 0x251 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x199 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1E0 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1B2 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1E0 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1E0 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1DF JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1C4 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1ED SWAP2 SWAP1 PUSH2 0x1F1 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x20A JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1F2 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x21B PUSH1 0xA DUP4 PUSH2 0x246 JUMP JUMPDEST SWAP2 POP PUSH2 0x226 DUP3 PUSH2 0x2B2 JUMP JUMPDEST PUSH1 0xA DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23C DUP3 PUSH2 0x20E JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x269 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x27D JUMPI PUSH2 0x27C PUSH2 0x283 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x48656C6C6F20776F726400000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x376 DUP1 PUSH2 0x2EA PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x4DF7E3D0 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x5760FA05 EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0xB83D07B7 EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0xCD97D84E EQ PUSH2 0xAB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xC9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x241 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x77 PUSH2 0xDC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x1E9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x95 PUSH2 0xEF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x21F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xB3 PUSH2 0x17D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x204 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x8 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x6 DUP1 SLOAD PUSH2 0xFC SWAP1 PUSH2 0x2CE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x128 SWAP1 PUSH2 0x2CE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x175 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x14A JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x175 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x158 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH2 0x18C DUP2 PUSH2 0x278 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x19B DUP2 PUSH2 0x284 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AC DUP3 PUSH2 0x25C JUMP JUMPDEST PUSH2 0x1B6 DUP2 DUP6 PUSH2 0x267 JUMP JUMPDEST SWAP4 POP PUSH2 0x1C6 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x29B JUMP JUMPDEST PUSH2 0x1CF DUP2 PUSH2 0x32F JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1E3 DUP2 PUSH2 0x28E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1FE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x183 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x219 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x192 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x239 DUP2 DUP5 PUSH2 0x1A1 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x256 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1DA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2B9 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x29E JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2C8 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2E6 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2FA JUMPI PUSH2 0x2F9 PUSH2 0x300 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xBD 0xD8 PUSH15 0xBCA58BB99E6CEA173F0D0EEE29144E ADDMOD CALLDATALOAD BASEFEE 0xE1 SHL NUMBER 0xBD 0xC GT LOG0 RETURN 0xAF PUSH4 0xC164736F PUSH13 0x63430008070033000000000000 ",
"sourceMap": "60:673:0:-:0;;;215:1;198:18;;;;;;;;;;;;;;;;;;;;275:3;266:12;;;;;;;;;;;;;;;;;;;;;;293:2;285:10;;337:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;386:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;498:4;474:28;;;;;;;;;;;;;;;;;;;;535:5;509:31;;;;;;;;;;;;;;;;;;;;696:30;;;;;;;:::i;:::-;;;;;;;;;;;;;686:41;;;;;;661:66;;60:673;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:402:1:-;167:3;188:85;270:2;265:3;188:85;:::i;:::-;181:92;;282:93;371:3;282:93;:::i;:::-;400:2;395:3;391:12;384:19;;7:402;;;:::o;415:381::-;600:3;622:148;766:3;622:148;:::i;:::-;615:155;;787:3;780:10;;415:381;;;:::o;802:148::-;904:11;941:3;926:18;;802:148;;;;:::o;956:320::-;1000:6;1037:1;1031:4;1027:12;1017:22;;1084:1;1078:4;1074:12;1105:18;1095:81;;1161:4;1153:6;1149:17;1139:27;;1095:81;1223:2;1215:6;1212:14;1192:18;1189:38;1186:84;;;1242:18;;:::i;:::-;1186:84;1007:269;956:320;;;:::o;1282:180::-;1330:77;1327:1;1320:88;1427:4;1424:1;1417:15;1451:4;1448:1;1441:15;1468:160;1608:12;1604:1;1596:6;1592:14;1585:36;1468:160;:::o;60:673:0:-;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@b_6": {
"entryPoint": 201,
"id": 6,
"parameterSlots": 0,
"returnSlots": 0
},
"@bool_true_28": {
"entryPoint": 220,
"id": 28,
"parameterSlots": 0,
"returnSlots": 0
},
"@hashing_45": {
"entryPoint": 381,
"id": 45,
"parameterSlots": 0,
"returnSlots": 0
},
"@str_public_20": {
"entryPoint": 239,
"id": 20,
"parameterSlots": 0,
"returnSlots": 0
},
"abi_encode_t_bool_to_t_bool_fromStack": {
"entryPoint": 387,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_bytes32_to_t_bytes32_fromStack": {
"entryPoint": 402,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": {
"entryPoint": 417,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_uint8_to_t_uint8_fromStack": {
"entryPoint": 474,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": {
"entryPoint": 489,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": {
"entryPoint": 516,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 543,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed": {
"entryPoint": 577,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"array_length_t_string_memory_ptr": {
"entryPoint": 604,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 615,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_bool": {
"entryPoint": 632,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_bytes32": {
"entryPoint": 644,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint8": {
"entryPoint": 654,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"copy_memory_to_memory": {
"entryPoint": 667,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"extract_byte_array_length": {
"entryPoint": 718,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x22": {
"entryPoint": 768,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"round_up_to_mul_of_32": {
"entryPoint": 815,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:3198:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "66:50:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "83:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "103:5:1"
}
],
"functionName": {
"name": "cleanup_t_bool",
"nodeType": "YulIdentifier",
"src": "88:14:1"
},
"nodeType": "YulFunctionCall",
"src": "88:21:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "76:6:1"
},
"nodeType": "YulFunctionCall",
"src": "76:34:1"
},
"nodeType": "YulExpressionStatement",
"src": "76:34:1"
}
]
},
"name": "abi_encode_t_bool_to_t_bool_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "54:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "61:3:1",
"type": ""
}
],
"src": "7:109:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "187:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "204:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "227:5:1"
}
],
"functionName": {
"name": "cleanup_t_bytes32",
"nodeType": "YulIdentifier",
"src": "209:17:1"
},
"nodeType": "YulFunctionCall",
"src": "209:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "197:6:1"
},
"nodeType": "YulFunctionCall",
"src": "197:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "197:37:1"
}
]
},
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "175:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "182:3:1",
"type": ""
}
],
"src": "122:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "338:272:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "348:53:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "395:5:1"
}
],
"functionName": {
"name": "array_length_t_string_memory_ptr",
"nodeType": "YulIdentifier",
"src": "362:32:1"
},
"nodeType": "YulFunctionCall",
"src": "362:39:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "352:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "410:78:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "476:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "481:6:1"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "417:58:1"
},
"nodeType": "YulFunctionCall",
"src": "417:71:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "410:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "523:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "530:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "519:3:1"
},
"nodeType": "YulFunctionCall",
"src": "519:16:1"
},
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "537:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "542:6:1"
}
],
"functionName": {
"name": "copy_memory_to_memory",
"nodeType": "YulIdentifier",
"src": "497:21:1"
},
"nodeType": "YulFunctionCall",
"src": "497:52:1"
},
"nodeType": "YulExpressionStatement",
"src": "497:52:1"
},
{
"nodeType": "YulAssignment",
"src": "558:46:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "569:3:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "596:6:1"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nodeType": "YulIdentifier",
"src": "574:21:1"
},
"nodeType": "YulFunctionCall",
"src": "574:29:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "565:3:1"
},
"nodeType": "YulFunctionCall",
"src": "565:39:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "558:3:1"
}
]
}
]
},
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "319:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "326:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "334:3:1",
"type": ""
}
],
"src": "246:364:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "677:51:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "694:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "715:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint8",
"nodeType": "YulIdentifier",
"src": "699:15:1"
},
"nodeType": "YulFunctionCall",
"src": "699:22:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "687:6:1"
},
"nodeType": "YulFunctionCall",
"src": "687:35:1"
},
"nodeType": "YulExpressionStatement",
"src": "687:35:1"
}
]
},
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "665:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "672:3:1",
"type": ""
}
],
"src": "616:112:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "826:118:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "836:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "848:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "859:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "844:3:1"
},
"nodeType": "YulFunctionCall",
"src": "844:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "836:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "910:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "923:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "934:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "919:3:1"
},
"nodeType": "YulFunctionCall",
"src": "919:17:1"
}
],
"functionName": {
"name": "abi_encode_t_bool_to_t_bool_fromStack",
"nodeType": "YulIdentifier",
"src": "872:37:1"
},
"nodeType": "YulFunctionCall",
"src": "872:65:1"
},
"nodeType": "YulExpressionStatement",
"src": "872:65:1"
}
]
},
"name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "798:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "810:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "821:4:1",
"type": ""
}
],
"src": "734:210:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1048:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1058:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1070:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1081:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1066:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1066:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1058:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1138:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1151:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1162:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1147:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1147:17:1"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nodeType": "YulIdentifier",
"src": "1094:43:1"
},
"nodeType": "YulFunctionCall",
"src": "1094:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "1094:71:1"
}
]
},
"name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1020:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1032:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "1043:4:1",
"type": ""
}
],
"src": "950:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1296:195:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1306:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1318:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1329:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1314:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1314:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1306:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1353:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1364:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1349:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1349:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1372:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1378:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1368:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1368:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1342:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1342:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "1342:47:1"
},
{
"nodeType": "YulAssignment",
"src": "1398:86:1",
"value": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1470:6:1"
},
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1479:4:1"
}
],
"functionName": {
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "1406:63:1"
},
"nodeType": "YulFunctionCall",
"src": "1406:78:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1398:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1268:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1280:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "1291:4:1",
"type": ""
}
],
"src": "1178:313:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1591:120:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1601:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1613:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1624:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1609:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1609:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1601:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1677:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1690:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1701:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1686:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1686:17:1"
}
],
"functionName": {
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nodeType": "YulIdentifier",
"src": "1637:39:1"
},
"nodeType": "YulFunctionCall",
"src": "1637:67:1"
},
"nodeType": "YulExpressionStatement",
"src": "1637:67:1"
}
]
},
"name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1563:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1575:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "1586:4:1",
"type": ""
}
],
"src": "1497:214:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1776:40:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1787:22:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1803:5:1"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "1797:5:1"
},
"nodeType": "YulFunctionCall",
"src": "1797:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1787:6:1"
}
]
}
]
},
"name": "array_length_t_string_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1759:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "1769:6:1",
"type": ""
}
],
"src": "1717:99:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1918:73:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1935:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1940:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1928:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1928:19:1"
},
"nodeType": "YulExpressionStatement",
"src": "1928:19:1"
},
{
"nodeType": "YulAssignment",
"src": "1956:29:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1975:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1980:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1971:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1971:14:1"
},
"variableNames": [
{
"name": "updated_pos",
"nodeType": "YulIdentifier",
"src": "1956:11:1"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "1890:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "1895:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nodeType": "YulTypedName",
"src": "1906:11:1",
"type": ""
}
],
"src": "1822:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2039:48:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2049:32:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2074:5:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2067:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2067:13:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2060:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2060:21:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "2049:7:1"
}
]
}
]
},
"name": "cleanup_t_bool",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2021:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "2031:7:1",
"type": ""
}
],
"src": "1997:90:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2138:32:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2148:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "2159:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "2148:7:1"
}
]
}
]
},
"name": "cleanup_t_bytes32",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2120:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "2130:7:1",
"type": ""
}
],
"src": "2093:77:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2219:43:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2229:27:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2244:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2251:4:1",
"type": "",
"value": "0xff"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2240:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2240:16:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "2229:7:1"
}
]
}
]
},
"name": "cleanup_t_uint8",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2201:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "2211:7:1",
"type": ""
}
],
"src": "2176:86:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2317:258:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "2327:10:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "2336:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "i",
"nodeType": "YulTypedName",
"src": "2331:1:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "2396:63:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "2421:3:1"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2426:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2417:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2417:11:1"
},
{
"arguments": [
{
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "2440:3:1"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2445:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2436:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2436:11:1"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "2430:5:1"
},
"nodeType": "YulFunctionCall",
"src": "2430:18:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2410:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2410:39:1"
},
"nodeType": "YulExpressionStatement",
"src": "2410:39:1"
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2357:1:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2360:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "2354:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2354:13:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "2368:19:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2370:15:1",
"value": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2379:1:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2382:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2375:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2375:10:1"
},
"variableNames": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2370:1:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "2350:3:1",
"statements": []
},
"src": "2346:113:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2493:76:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "2543:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2548:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2539:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2539:16:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2557:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2532:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2532:27:1"
},
"nodeType": "YulExpressionStatement",
"src": "2532:27:1"
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2474:1:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2477:6:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "2471:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2471:13:1"
},
"nodeType": "YulIf",
"src": "2468:101:1"
}
]
},
"name": "copy_memory_to_memory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "2299:3:1",
"type": ""
},
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "2304:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2309:6:1",
"type": ""
}
],
"src": "2268:307:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2632:269:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2642:22:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "2656:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2662:1:1",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "2652:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2652:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2642:6:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "2673:38:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "2703:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2709:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2699:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2699:12:1"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulTypedName",
"src": "2677:18:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "2750:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2764:27:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2778:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2786:4:1",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2774:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2774:17:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2764:6:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "2730:18:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2723:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2723:26:1"
},
"nodeType": "YulIf",
"src": "2720:81:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2853:42:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x22",
"nodeType": "YulIdentifier",
"src": "2867:16:1"
},
"nodeType": "YulFunctionCall",
"src": "2867:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "2867:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "2817:18:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2840:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2848:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "2837:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2837:14:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "2814:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2814:38:1"
},
"nodeType": "YulIf",
"src": "2811:84:1"
}
]
},
"name": "extract_byte_array_length",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "2616:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2625:6:1",
"type": ""
}
],
"src": "2581:320:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2935:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2952:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2955:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2945:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2945:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "2945:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3049:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3052:4:1",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3042:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3042:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "3042:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3073:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3076:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "3066:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3066:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "3066:15:1"
}
]
},
"name": "panic_error_0x22",
"nodeType": "YulFunctionDefinition",
"src": "2907:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3141:54:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3151:38:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3169:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3176:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3165:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3165:14:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3185:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "3181:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3181:7:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "3161:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3161:28:1"
},
"variableNames": [
{
"name": "result",
"nodeType": "YulIdentifier",
"src": "3151:6:1"
}
]
}
]
},
"name": "round_up_to_mul_of_32",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "3124:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nodeType": "YulTypedName",
"src": "3134:6:1",
"type": ""
}
],
"src": "3093:102:1"
}
]
},
"contents": "{\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_uint8_to_t_uint8_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint8(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint8_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "608060405234801561001057600080fd5b506004361061004c5760003560e01c80634df7e3d0146100515780635760fa051461006f578063b83d07b71461008d578063cd97d84e146100ab575b600080fd5b6100596100c9565b6040516100669190610241565b60405180910390f35b6100776100dc565b60405161008491906101e9565b60405180910390f35b6100956100ef565b6040516100a2919061021f565b60405180910390f35b6100b361017d565b6040516100c09190610204565b60405180910390f35b600160009054906101000a900460ff1681565b600860019054906101000a900460ff1681565b600680546100fc906102ce565b80601f0160208091040260200160405190810160405280929190818152602001828054610128906102ce565b80156101755780601f1061014a57610100808354040283529160200191610175565b820191906000526020600020905b81548152906001019060200180831161015857829003601f168201915b505050505081565b600b5481565b61018c81610278565b82525050565b61019b81610284565b82525050565b60006101ac8261025c565b6101b68185610267565b93506101c681856020860161029b565b6101cf8161032f565b840191505092915050565b6101e38161028e565b82525050565b60006020820190506101fe6000830184610183565b92915050565b60006020820190506102196000830184610192565b92915050565b6000602082019050818103600083015261023981846101a1565b905092915050565b600060208201905061025660008301846101da565b92915050565b600081519050919050565b600082825260208201905092915050565b60008115159050919050565b6000819050919050565b600060ff82169050919050565b60005b838110156102b957808201518184015260208101905061029e565b838111156102c8576000848401525b50505050565b600060028204905060018216806102e657607f821691505b602082108114156102fa576102f9610300565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f830116905091905056fea2646970667358221220bdd86ebca58bb99e6cea173f0d0eee29144e083548e11b43bd0c11a0f3af63c164736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x4DF7E3D0 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x5760FA05 EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0xB83D07B7 EQ PUSH2 0x8D JUMPI DUP1 PUSH4 0xCD97D84E EQ PUSH2 0xAB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xC9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x241 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x77 PUSH2 0xDC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x1E9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x95 PUSH2 0xEF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA2 SWAP2 SWAP1 PUSH2 0x21F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xB3 PUSH2 0x17D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC0 SWAP2 SWAP1 PUSH2 0x204 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x8 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x6 DUP1 SLOAD PUSH2 0xFC SWAP1 PUSH2 0x2CE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x128 SWAP1 PUSH2 0x2CE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x175 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x14A JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x175 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x158 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH2 0x18C DUP2 PUSH2 0x278 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x19B DUP2 PUSH2 0x284 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AC DUP3 PUSH2 0x25C JUMP JUMPDEST PUSH2 0x1B6 DUP2 DUP6 PUSH2 0x267 JUMP JUMPDEST SWAP4 POP PUSH2 0x1C6 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x29B JUMP JUMPDEST PUSH2 0x1CF DUP2 PUSH2 0x32F JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1E3 DUP2 PUSH2 0x28E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1FE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x183 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x219 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x192 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x239 DUP2 DUP5 PUSH2 0x1A1 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x256 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1DA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2B9 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x29E JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2C8 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2E6 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2FA JUMPI PUSH2 0x2F9 PUSH2 0x300 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xBD 0xD8 PUSH15 0xBCA58BB99E6CEA173F0D0EEE29144E ADDMOD CALLDATALOAD BASEFEE 0xE1 SHL NUMBER 0xBD 0xC GT LOG0 RETURN 0xAF PUSH4 0xC164736F PUSH13 0x63430008070033000000000000 ",
"sourceMap": "60:673:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;198:18;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;474:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;337:42;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;661:66;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;198:18;;;;;;;;;;;;;:::o;474:28::-;;;;;;;;;;;;;:::o;337:42::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;661:66::-;;;;:::o;7:109:1:-;88:21;103:5;88:21;:::i;:::-;83:3;76:34;7:109;;:::o;122:118::-;209:24;227:5;209:24;:::i;:::-;204:3;197:37;122:118;;:::o;246:364::-;334:3;362:39;395:5;362:39;:::i;:::-;417:71;481:6;476:3;417:71;:::i;:::-;410:78;;497:52;542:6;537:3;530:4;523:5;519:16;497:52;:::i;:::-;574:29;596:6;574:29;:::i;:::-;569:3;565:39;558:46;;338:272;246:364;;;;:::o;616:112::-;699:22;715:5;699:22;:::i;:::-;694:3;687:35;616:112;;:::o;734:210::-;821:4;859:2;848:9;844:18;836:26;;872:65;934:1;923:9;919:17;910:6;872:65;:::i;:::-;734:210;;;;:::o;950:222::-;1043:4;1081:2;1070:9;1066:18;1058:26;;1094:71;1162:1;1151:9;1147:17;1138:6;1094:71;:::i;:::-;950:222;;;;:::o;1178:313::-;1291:4;1329:2;1318:9;1314:18;1306:26;;1378:9;1372:4;1368:20;1364:1;1353:9;1349:17;1342:47;1406:78;1479:4;1470:6;1406:78;:::i;:::-;1398:86;;1178:313;;;;:::o;1497:214::-;1586:4;1624:2;1613:9;1609:18;1601:26;;1637:67;1701:1;1690:9;1686:17;1677:6;1637:67;:::i;:::-;1497:214;;;;:::o;1717:99::-;1769:6;1803:5;1797:12;1787:22;;1717:99;;;:::o;1822:169::-;1906:11;1940:6;1935:3;1928:19;1980:4;1975:3;1971:14;1956:29;;1822:169;;;;:::o;1997:90::-;2031:7;2074:5;2067:13;2060:21;2049:32;;1997:90;;;:::o;2093:77::-;2130:7;2159:5;2148:16;;2093:77;;;:::o;2176:86::-;2211:7;2251:4;2244:5;2240:16;2229:27;;2176:86;;;:::o;2268:307::-;2336:1;2346:113;2360:6;2357:1;2354:13;2346:113;;;2445:1;2440:3;2436:11;2430:18;2426:1;2421:3;2417:11;2410:39;2382:2;2379:1;2375:10;2370:15;;2346:113;;;2477:6;2474:1;2471:13;2468:101;;;2557:1;2548:6;2543:3;2539:16;2532:27;2468:101;2317:258;2268:307;;;:::o;2581:320::-;2625:6;2662:1;2656:4;2652:12;2642:22;;2709:1;2703:4;2699:12;2730:18;2720:81;;2786:4;2778:6;2774:17;2764:27;;2720:81;2848:2;2840:6;2837:14;2817:18;2814:38;2811:84;;;2867:18;;:::i;:::-;2811:84;2632:269;2581:320;;;:::o;2907:180::-;2955:77;2952:1;2945:88;3052:4;3049:1;3042:15;3076:4;3073:1;3066:15;3093:102;3134:6;3185:2;3181:7;3176:2;3169:5;3165:14;3161:28;3151:38;;3093:102;;;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "177200",
"executionCost": "infinite",
"totalCost": "infinite"
},
"external": {
"b()": "2449",
"bool_true()": "2521",
"hashing()": "2473",
"str_public()": "infinite"
}
},
"legacyAssembly": {
".code": [
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 733,
"name": "MSTORE",
"source": 0
},
{
"begin": 215,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "3"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 198,
"end": 216,
"name": "EXP",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "NOT",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP4",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "OR",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SSTORE",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "POP",
"source": 0
},
{
"begin": 275,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0"
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "3"
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 266,
"end": 278,
"name": "EXP",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "DUP2",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SLOAD",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "DUP2",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 266,
"end": 278,
"name": "MUL",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "NOT",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "AND",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SWAP1",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "DUP4",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 266,
"end": 278,
"name": "SIGNEXTEND",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 266,
"end": 278,
"name": "AND",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "MUL",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "OR",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SWAP1",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SSTORE",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "POP",
"source": 0
},
{
"begin": 293,
"end": 295,
"name": "PUSH",
"source": 0,
"value": "41"
},
{
"begin": 285,
"end": 295,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 285,
"end": 295,
"name": "SSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "D"
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "537472696E67207075626C696300000000000000000000000000000000000000"
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "6"
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 337,
"end": 379,
"name": "SWAP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 386,
"end": 431,
"name": "MLOAD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 386,
"end": 431,
"name": "ADD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 386,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "E"
},
{
"begin": 386,
"end": 431,
"name": "DUP2",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 386,
"end": 431,
"name": "ADD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "537472696E672050726976617465000000000000000000000000000000000000"
},
{
"begin": 386,
"end": 431,
"name": "DUP2",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "POP",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "7"
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "MLOAD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 386,
"end": 431,
"name": "ADD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 386,
"end": 431,
"name": "SWAP3",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP2",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 386,
"end": 431,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 386,
"end": 431,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 386,
"end": 431,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "POP",
"source": 0
},
{
"begin": 498,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "8"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 474,
"end": 502,
"name": "EXP",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 474,
"end": 502,
"name": "MUL",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "NOT",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "AND",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP4",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "ISZERO",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "ISZERO",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "MUL",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "OR",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SSTORE",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "POP",
"source": 0
},
{
"begin": 535,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "8"
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 509,
"end": 540,
"name": "EXP",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "DUP2",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SLOAD",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "DUP2",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 509,
"end": 540,
"name": "MUL",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "NOT",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "AND",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SWAP1",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "DUP4",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "ISZERO",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "ISZERO",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "MUL",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "OR",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SWAP1",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SSTORE",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "POP",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 696,
"end": 726,
"name": "MLOAD",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 696,
"end": 726,
"name": "ADD",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 696,
"end": 726,
"name": "SWAP1",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 696,
"end": 726,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 696,
"end": 726,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 696,
"end": 726,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 696,
"end": 726,
"name": "MLOAD",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 696,
"end": 726,
"name": "DUP2",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "DUP4",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "SUB",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "SUB",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "DUP2",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "MSTORE",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "SWAP1",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 696,
"end": 726,
"name": "MSTORE",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "DUP1",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "MLOAD",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "SWAP1",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 686,
"end": 727,
"name": "ADD",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "KECCAK256",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH",
"source": 0,
"value": "B"
},
{
"begin": 661,
"end": 727,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "REVERT",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 60,
"end": 733,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SLOAD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 60,
"end": 733,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "MSTORE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "KECCAK256",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 60,
"end": 733,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DIV",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP2",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "DUP6",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 733,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 60,
"end": 733,
"name": "LT",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "MLOAD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 60,
"end": 733,
"name": "NOT",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "AND",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP4",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "OR",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP6",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 733,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "12"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 733,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP6",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP2",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "GT",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "MLOAD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 60,
"end": 733,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 733,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 60,
"end": 733,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "14"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "15"
},
{
"begin": 60,
"end": 733,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "16"
},
{
"begin": 60,
"end": 733,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "15"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "16"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "17"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "GT",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "18"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "DUP2",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 733,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 60,
"end": 733,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "18"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 7,
"end": 409,
"name": "tag",
"source": 1,
"value": "20"
},
{
"begin": 7,
"end": 409,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 167,
"end": 170,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 188,
"end": 273,
"name": "PUSH [tag]",
"source": 1,
"value": "22"
},
{
"begin": 270,
"end": 272,
"name": "PUSH",
"source": 1,
"value": "A"
},
{
"begin": 265,
"end": 268,
"name": "DUP4",
"source": 1
},
{
"begin": 188,
"end": 273,
"name": "PUSH [tag]",
"source": 1,
"value": "23"
},
{
"begin": 188,
"end": 273,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 188,
"end": 273,
"name": "tag",
"source": 1,
"value": "22"
},
{
"begin": 188,
"end": 273,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 181,
"end": 273,
"name": "SWAP2",
"source": 1
},
{
"begin": 181,
"end": 273,
"name": "POP",
"source": 1
},
{
"begin": 282,
"end": 375,
"name": "PUSH [tag]",
"source": 1,
"value": "24"
},
{
"begin": 371,
"end": 374,
"name": "DUP3",
"source": 1
},
{
"begin": 282,
"end": 375,
"name": "PUSH [tag]",
"source": 1,
"value": "25"
},
{
"begin": 282,
"end": 375,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 282,
"end": 375,
"name": "tag",
"source": 1,
"value": "24"
},
{
"begin": 282,
"end": 375,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 400,
"end": 402,
"name": "PUSH",
"source": 1,
"value": "A"
},
{
"begin": 395,
"end": 398,
"name": "DUP3",
"source": 1
},
{
"begin": 391,
"end": 403,
"name": "ADD",
"source": 1
},
{
"begin": 384,
"end": 403,
"name": "SWAP1",
"source": 1
},
{
"begin": 384,
"end": 403,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 409,
"name": "SWAP2",
"source": 1
},
{
"begin": 7,
"end": 409,
"name": "SWAP1",
"source": 1
},
{
"begin": 7,
"end": 409,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 409,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 415,
"end": 796,
"name": "tag",
"source": 1,
"value": "5"
},
{
"begin": 415,
"end": 796,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 600,
"end": 603,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 622,
"end": 770,
"name": "PUSH [tag]",
"source": 1,
"value": "27"
},
{
"begin": 766,
"end": 769,
"name": "DUP3",
"source": 1
},
{
"begin": 622,
"end": 770,
"name": "PUSH [tag]",
"source": 1,
"value": "20"
},
{
"begin": 622,
"end": 770,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 622,
"end": 770,
"name": "tag",
"source": 1,
"value": "27"
},
{
"begin": 622,
"end": 770,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 615,
"end": 770,
"name": "SWAP2",
"source": 1
},
{
"begin": 615,
"end": 770,
"name": "POP",
"source": 1
},
{
"begin": 787,
"end": 790,
"name": "DUP2",
"source": 1
},
{
"begin": 780,
"end": 790,
"name": "SWAP1",
"source": 1
},
{
"begin": 780,
"end": 790,
"name": "POP",
"source": 1
},
{
"begin": 415,
"end": 796,
"name": "SWAP2",
"source": 1
},
{
"begin": 415,
"end": 796,
"name": "SWAP1",
"source": 1
},
{
"begin": 415,
"end": 796,
"name": "POP",
"source": 1
},
{
"begin": 415,
"end": 796,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 802,
"end": 950,
"name": "tag",
"source": 1,
"value": "23"
},
{
"begin": 802,
"end": 950,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 904,
"end": 915,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 941,
"end": 944,
"name": "DUP2",
"source": 1
},
{
"begin": 926,
"end": 944,
"name": "SWAP1",
"source": 1
},
{
"begin": 926,
"end": 944,
"name": "POP",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "SWAP3",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "SWAP2",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "POP",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "POP",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 956,
"end": 1276,
"name": "tag",
"source": 1,
"value": "9"
},
{
"begin": 956,
"end": 1276,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1000,
"end": 1006,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1037,
"end": 1038,
"name": "PUSH",
"source": 1,
"value": "2"
},
{
"begin": 1031,
"end": 1035,
"name": "DUP3",
"source": 1
},
{
"begin": 1027,
"end": 1039,
"name": "DIV",
"source": 1
},
{
"begin": 1017,
"end": 1039,
"name": "SWAP1",
"source": 1
},
{
"begin": 1017,
"end": 1039,
"name": "POP",
"source": 1
},
{
"begin": 1084,
"end": 1085,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 1078,
"end": 1082,
"name": "DUP3",
"source": 1
},
{
"begin": 1074,
"end": 1086,
"name": "AND",
"source": 1
},
{
"begin": 1105,
"end": 1123,
"name": "DUP1",
"source": 1
},
{
"begin": 1095,
"end": 1176,
"name": "PUSH [tag]",
"source": 1,
"value": "30"
},
{
"begin": 1095,
"end": 1176,
"name": "JUMPI",
"source": 1
},
{
"begin": 1161,
"end": 1165,
"name": "PUSH",
"source": 1,
"value": "7F"
},
{
"begin": 1153,
"end": 1159,
"name": "DUP3",
"source": 1
},
{
"begin": 1149,
"end": 1166,
"name": "AND",
"source": 1
},
{
"begin": 1139,
"end": 1166,
"name": "SWAP2",
"source": 1
},
{
"begin": 1139,
"end": 1166,
"name": "POP",
"source": 1
},
{
"begin": 1095,
"end": 1176,
"name": "tag",
"source": 1,
"value": "30"
},
{
"begin": 1095,
"end": 1176,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1223,
"end": 1225,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1215,
"end": 1221,
"name": "DUP3",
"source": 1
},
{
"begin": 1212,
"end": 1226,
"name": "LT",
"source": 1
},
{
"begin": 1192,
"end": 1210,
"name": "DUP2",
"source": 1
},
{
"begin": 1189,
"end": 1227,
"name": "EQ",
"source": 1
},
{
"begin": 1186,
"end": 1270,
"name": "ISZERO",
"source": 1
},
{
"begin": 1186,
"end": 1270,
"name": "PUSH [tag]",
"source": 1,
"value": "31"
},
{
"begin": 1186,
"end": 1270,
"name": "JUMPI",
"source": 1
},
{
"begin": 1242,
"end": 1260,
"name": "PUSH [tag]",
"source": 1,
"value": "32"
},
{
"begin": 1242,
"end": 1260,
"name": "PUSH [tag]",
"source": 1,
"value": "33"
},
{
"begin": 1242,
"end": 1260,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1242,
"end": 1260,
"name": "tag",
"source": 1,
"value": "32"
},
{
"begin": 1242,
"end": 1260,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1186,
"end": 1270,
"name": "tag",
"source": 1,
"value": "31"
},
{
"begin": 1186,
"end": 1270,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1007,
"end": 1276,
"name": "POP",
"source": 1
},
{
"begin": 956,
"end": 1276,
"name": "SWAP2",
"source": 1
},
{
"begin": 956,
"end": 1276,
"name": "SWAP1",
"source": 1
},
{
"begin": 956,
"end": 1276,
"name": "POP",
"source": 1
},
{
"begin": 956,
"end": 1276,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1282,
"end": 1462,
"name": "tag",
"source": 1,
"value": "33"
},
{
"begin": 1282,
"end": 1462,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1330,
"end": 1407,
"name": "PUSH",
"source": 1,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 1327,
"end": 1328,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1320,
"end": 1408,
"name": "MSTORE",
"source": 1
},
{
"begin": 1427,
"end": 1431,
"name": "PUSH",
"source": 1,
"value": "22"
},
{
"begin": 1424,
"end": 1425,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 1417,
"end": 1432,
"name": "MSTORE",
"source": 1
},
{
"begin": 1451,
"end": 1455,
"name": "PUSH",
"source": 1,
"value": "24"
},
{
"begin": 1448,
"end": 1449,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1441,
"end": 1456,
"name": "REVERT",
"source": 1
},
{
"begin": 1468,
"end": 1628,
"name": "tag",
"source": 1,
"value": "25"
},
{
"begin": 1468,
"end": 1628,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1608,
"end": 1620,
"name": "PUSH",
"source": 1,
"value": "48656C6C6F20776F726400000000000000000000000000000000000000000000"
},
{
"begin": 1604,
"end": 1605,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1596,
"end": 1602,
"name": "DUP3",
"source": 1
},
{
"begin": 1592,
"end": 1606,
"name": "ADD",
"source": 1
},
{
"begin": 1585,
"end": 1621,
"name": "MSTORE",
"source": 1
},
{
"begin": 1468,
"end": 1628,
"name": "POP",
"source": 1
},
{
"begin": 1468,
"end": 1628,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "CODECOPY",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a2646970667358221220bdd86ebca58bb99e6cea173f0d0eee29144e083548e11b43bd0c11a0f3af63c164736f6c63430008070033",
".code": [
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 733,
"name": "MSTORE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "REVERT",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 60,
"end": 733,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "LT",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 60,
"end": 733,
"name": "SHR",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "4DF7E3D0"
},
{
"begin": 60,
"end": 733,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "5760FA05"
},
{
"begin": 60,
"end": 733,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "B83D07B7"
},
{
"begin": 60,
"end": 733,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "CD97D84E"
},
{
"begin": 60,
"end": 733,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 60,
"end": 733,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 733,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 733,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 733,
"name": "REVERT",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 198,
"end": 216,
"name": "MLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 198,
"end": 216,
"name": "SWAP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "9"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 198,
"end": 216,
"name": "MLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SUB",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "RETURN",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 474,
"end": 502,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 474,
"end": 502,
"name": "MLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 474,
"end": 502,
"name": "SWAP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 474,
"end": 502,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 474,
"end": 502,
"name": "MLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SUB",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "RETURN",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "15"
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "16"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "15"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "18"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "17"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SUB",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "RETURN",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 661,
"end": 727,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 661,
"end": 727,
"name": "PUSH [tag]",
"source": 0,
"value": "20"
},
{
"begin": 661,
"end": 727,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 661,
"end": 727,
"name": "tag",
"source": 0,
"value": "19"
},
{
"begin": 661,
"end": 727,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 661,
"end": 727,
"name": "MLOAD",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH [tag]",
"source": 0,
"value": "21"
},
{
"begin": 661,
"end": 727,
"name": "SWAP2",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "SWAP1",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH [tag]",
"source": 0,
"value": "22"
},
{
"begin": 661,
"end": 727,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 661,
"end": 727,
"name": "tag",
"source": 0,
"value": "21"
},
{
"begin": 661,
"end": 727,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 661,
"end": 727,
"name": "MLOAD",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "DUP1",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "SWAP2",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "SUB",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "SWAP1",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "RETURN",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 198,
"end": 216,
"name": "EXP",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DIV",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "12"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "8"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 474,
"end": 502,
"name": "EXP",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DIV",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 474,
"end": 502,
"name": "AND",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "16"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "6"
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "23"
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "24"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "23"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DIV",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MUL",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "25"
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "24"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "25"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ISZERO",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "26"
},
{
"begin": 337,
"end": 379,
"name": "JUMPI",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 337,
"end": 379,
"name": "LT",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "27"
},
{
"begin": 337,
"end": 379,
"name": "JUMPI",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP4",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DIV",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MUL",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP4",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "26"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "27"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 337,
"end": 379,
"name": "KECCAK256",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "28"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP4",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "GT",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "28"
},
{
"begin": 337,
"end": 379,
"name": "JUMPI",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SUB",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 337,
"end": 379,
"name": "AND",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "26"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 661,
"end": 727,
"name": "tag",
"source": 0,
"value": "20"
},
{
"begin": 661,
"end": 727,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH",
"source": 0,
"value": "B"
},
{
"begin": 661,
"end": 727,
"name": "SLOAD",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "DUP2",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 7,
"end": 116,
"name": "tag",
"source": 1,
"value": "30"
},
{
"begin": 7,
"end": 116,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 88,
"end": 109,
"name": "PUSH [tag]",
"source": 1,
"value": "32"
},
{
"begin": 103,
"end": 108,
"name": "DUP2",
"source": 1
},
{
"begin": 88,
"end": 109,
"name": "PUSH [tag]",
"source": 1,
"value": "33"
},
{
"begin": 88,
"end": 109,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 88,
"end": 109,
"name": "tag",
"source": 1,
"value": "32"
},
{
"begin": 88,
"end": 109,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 83,
"end": 86,
"name": "DUP3",
"source": 1
},
{
"begin": 76,
"end": 110,
"name": "MSTORE",
"source": 1
},
{
"begin": 7,
"end": 116,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 116,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 116,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 122,
"end": 240,
"name": "tag",
"source": 1,
"value": "34"
},
{
"begin": 122,
"end": 240,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 209,
"end": 233,
"name": "PUSH [tag]",
"source": 1,
"value": "36"
},
{
"begin": 227,
"end": 232,
"name": "DUP2",
"source": 1
},
{
"begin": 209,
"end": 233,
"name": "PUSH [tag]",
"source": 1,
"value": "37"
},
{
"begin": 209,
"end": 233,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 209,
"end": 233,
"name": "tag",
"source": 1,
"value": "36"
},
{
"begin": 209,
"end": 233,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 204,
"end": 207,
"name": "DUP3",
"source": 1
},
{
"begin": 197,
"end": 234,
"name": "MSTORE",
"source": 1
},
{
"begin": 122,
"end": 240,
"name": "POP",
"source": 1
},
{
"begin": 122,
"end": 240,
"name": "POP",
"source": 1
},
{
"begin": 122,
"end": 240,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 246,
"end": 610,
"name": "tag",
"source": 1,
"value": "38"
},
{
"begin": 246,
"end": 610,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 334,
"end": 337,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 362,
"end": 401,
"name": "PUSH [tag]",
"source": 1,
"value": "40"
},
{
"begin": 395,
"end": 400,
"name": "DUP3",
"source": 1
},
{
"begin": 362,
"end": 401,
"name": "PUSH [tag]",
"source": 1,
"value": "41"
},
{
"begin": 362,
"end": 401,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 362,
"end": 401,
"name": "tag",
"source": 1,
"value": "40"
},
{
"begin": 362,
"end": 401,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 417,
"end": 488,
"name": "PUSH [tag]",
"source": 1,
"value": "42"
},
{
"begin": 481,
"end": 487,
"name": "DUP2",
"source": 1
},
{
"begin": 476,
"end": 479,
"name": "DUP6",
"source": 1
},
{
"begin": 417,
"end": 488,
"name": "PUSH [tag]",
"source": 1,
"value": "43"
},
{
"begin": 417,
"end": 488,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 417,
"end": 488,
"name": "tag",
"source": 1,
"value": "42"
},
{
"begin": 417,
"end": 488,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 410,
"end": 488,
"name": "SWAP4",
"source": 1
},
{
"begin": 410,
"end": 488,
"name": "POP",
"source": 1
},
{
"begin": 497,
"end": 549,
"name": "PUSH [tag]",
"source": 1,
"value": "44"
},
{
"begin": 542,
"end": 548,
"name": "DUP2",
"source": 1
},
{
"begin": 537,
"end": 540,
"name": "DUP6",
"source": 1
},
{
"begin": 530,
"end": 534,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 523,
"end": 528,
"name": "DUP7",
"source": 1
},
{
"begin": 519,
"end": 535,
"name": "ADD",
"source": 1
},
{
"begin": 497,
"end": 549,
"name": "PUSH [tag]",
"source": 1,
"value": "45"
},
{
"begin": 497,
"end": 549,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 497,
"end": 549,
"name": "tag",
"source": 1,
"value": "44"
},
{
"begin": 497,
"end": 549,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 574,
"end": 603,
"name": "PUSH [tag]",
"source": 1,
"value": "46"
},
{
"begin": 596,
"end": 602,
"name": "DUP2",
"source": 1
},
{
"begin": 574,
"end": 603,
"name": "PUSH [tag]",
"source": 1,
"value": "47"
},
{
"begin": 574,
"end": 603,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 574,
"end": 603,
"name": "tag",
"source": 1,
"value": "46"
},
{
"begin": 574,
"end": 603,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 569,
"end": 572,
"name": "DUP5",
"source": 1
},
{
"begin": 565,
"end": 604,
"name": "ADD",
"source": 1
},
{
"begin": 558,
"end": 604,
"name": "SWAP2",
"source": 1
},
{
"begin": 558,
"end": 604,
"name": "POP",
"source": 1
},
{
"begin": 338,
"end": 610,
"name": "POP",
"source": 1
},
{
"begin": 246,
"end": 610,
"name": "SWAP3",
"source": 1
},
{
"begin": 246,
"end": 610,
"name": "SWAP2",
"source": 1
},
{
"begin": 246,
"end": 610,
"name": "POP",
"source": 1
},
{
"begin": 246,
"end": 610,
"name": "POP",
"source": 1
},
{
"begin": 246,
"end": 610,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 616,
"end": 728,
"name": "tag",
"source": 1,
"value": "48"
},
{
"begin": 616,
"end": 728,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 699,
"end": 721,
"name": "PUSH [tag]",
"source": 1,
"value": "50"
},
{
"begin": 715,
"end": 720,
"name": "DUP2",
"source": 1
},
{
"begin": 699,
"end": 721,
"name": "PUSH [tag]",
"source": 1,
"value": "51"
},
{
"begin": 699,
"end": 721,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 699,
"end": 721,
"name": "tag",
"source": 1,
"value": "50"
},
{
"begin": 699,
"end": 721,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 694,
"end": 697,
"name": "DUP3",
"source": 1
},
{
"begin": 687,
"end": 722,
"name": "MSTORE",
"source": 1
},
{
"begin": 616,
"end": 728,
"name": "POP",
"source": 1
},
{
"begin": 616,
"end": 728,
"name": "POP",
"source": 1
},
{
"begin": 616,
"end": 728,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 734,
"end": 944,
"name": "tag",
"source": 1,
"value": "14"
},
{
"begin": 734,
"end": 944,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 821,
"end": 825,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 859,
"end": 861,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 848,
"end": 857,
"name": "DUP3",
"source": 1
},
{
"begin": 844,
"end": 862,
"name": "ADD",
"source": 1
},
{
"begin": 836,
"end": 862,
"name": "SWAP1",
"source": 1
},
{
"begin": 836,
"end": 862,
"name": "POP",
"source": 1
},
{
"begin": 872,
"end": 937,
"name": "PUSH [tag]",
"source": 1,
"value": "53"
},
{
"begin": 934,
"end": 935,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 923,
"end": 932,
"name": "DUP4",
"source": 1
},
{
"begin": 919,
"end": 936,
"name": "ADD",
"source": 1
},
{
"begin": 910,
"end": 916,
"name": "DUP5",
"source": 1
},
{
"begin": 872,
"end": 937,
"name": "PUSH [tag]",
"source": 1,
"value": "30"
},
{
"begin": 872,
"end": 937,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 872,
"end": 937,
"name": "tag",
"source": 1,
"value": "53"
},
{
"begin": 872,
"end": 937,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 734,
"end": 944,
"name": "SWAP3",
"source": 1
},
{
"begin": 734,
"end": 944,
"name": "SWAP2",
"source": 1
},
{
"begin": 734,
"end": 944,
"name": "POP",
"source": 1
},
{
"begin": 734,
"end": 944,
"name": "POP",
"source": 1
},
{
"begin": 734,
"end": 944,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 950,
"end": 1172,
"name": "tag",
"source": 1,
"value": "22"
},
{
"begin": 950,
"end": 1172,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1043,
"end": 1047,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1081,
"end": 1083,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1070,
"end": 1079,
"name": "DUP3",
"source": 1
},
{
"begin": 1066,
"end": 1084,
"name": "ADD",
"source": 1
},
{
"begin": 1058,
"end": 1084,
"name": "SWAP1",
"source": 1
},
{
"begin": 1058,
"end": 1084,
"name": "POP",
"source": 1
},
{
"begin": 1094,
"end": 1165,
"name": "PUSH [tag]",
"source": 1,
"value": "55"
},
{
"begin": 1162,
"end": 1163,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1151,
"end": 1160,
"name": "DUP4",
"source": 1
},
{
"begin": 1147,
"end": 1164,
"name": "ADD",
"source": 1
},
{
"begin": 1138,
"end": 1144,
"name": "DUP5",
"source": 1
},
{
"begin": 1094,
"end": 1165,
"name": "PUSH [tag]",
"source": 1,
"value": "34"
},
{
"begin": 1094,
"end": 1165,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1094,
"end": 1165,
"name": "tag",
"source": 1,
"value": "55"
},
{
"begin": 1094,
"end": 1165,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 950,
"end": 1172,
"name": "SWAP3",
"source": 1
},
{
"begin": 950,
"end": 1172,
"name": "SWAP2",
"source": 1
},
{
"begin": 950,
"end": 1172,
"name": "POP",
"source": 1
},
{
"begin": 950,
"end": 1172,
"name": "POP",
"source": 1
},
{
"begin": 950,
"end": 1172,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1178,
"end": 1491,
"name": "tag",
"source": 1,
"value": "18"
},
{
"begin": 1178,
"end": 1491,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1291,
"end": 1295,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1329,
"end": 1331,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1318,
"end": 1327,
"name": "DUP3",
"source": 1
},
{
"begin": 1314,
"end": 1332,
"name": "ADD",
"source": 1
},
{
"begin": 1306,
"end": 1332,
"name": "SWAP1",
"source": 1
},
{
"begin": 1306,
"end": 1332,
"name": "POP",
"source": 1
},
{
"begin": 1378,
"end": 1387,
"name": "DUP2",
"source": 1
},
{
"begin": 1372,
"end": 1376,
"name": "DUP2",
"source": 1
},
{
"begin": 1368,
"end": 1388,
"name": "SUB",
"source": 1
},
{
"begin": 1364,
"end": 1365,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1353,
"end": 1362,
"name": "DUP4",
"source": 1
},
{
"begin": 1349,
"end": 1366,
"name": "ADD",
"source": 1
},
{
"begin": 1342,
"end": 1389,
"name": "MSTORE",
"source": 1
},
{
"begin": 1406,
"end": 1484,
"name": "PUSH [tag]",
"source": 1,
"value": "57"
},
{
"begin": 1479,
"end": 1483,
"name": "DUP2",
"source": 1
},
{
"begin": 1470,
"end": 1476,
"name": "DUP5",
"source": 1
},
{
"begin": 1406,
"end": 1484,
"name": "PUSH [tag]",
"source": 1,
"value": "38"
},
{
"begin": 1406,
"end": 1484,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1406,
"end": 1484,
"name": "tag",
"source": 1,
"value": "57"
},
{
"begin": 1406,
"end": 1484,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1398,
"end": 1484,
"name": "SWAP1",
"source": 1
},
{
"begin": 1398,
"end": 1484,
"name": "POP",
"source": 1
},
{
"begin": 1178,
"end": 1491,
"name": "SWAP3",
"source": 1
},
{
"begin": 1178,
"end": 1491,
"name": "SWAP2",
"source": 1
},
{
"begin": 1178,
"end": 1491,
"name": "POP",
"source": 1
},
{
"begin": 1178,
"end": 1491,
"name": "POP",
"source": 1
},
{
"begin": 1178,
"end": 1491,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1497,
"end": 1711,
"name": "tag",
"source": 1,
"value": "10"
},
{
"begin": 1497,
"end": 1711,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1586,
"end": 1590,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1624,
"end": 1626,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1613,
"end": 1622,
"name": "DUP3",
"source": 1
},
{
"begin": 1609,
"end": 1627,
"name": "ADD",
"source": 1
},
{
"begin": 1601,
"end": 1627,
"name": "SWAP1",
"source": 1
},
{
"begin": 1601,
"end": 1627,
"name": "POP",
"source": 1
},
{
"begin": 1637,
"end": 1704,
"name": "PUSH [tag]",
"source": 1,
"value": "59"
},
{
"begin": 1701,
"end": 1702,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1690,
"end": 1699,
"name": "DUP4",
"source": 1
},
{
"begin": 1686,
"end": 1703,
"name": "ADD",
"source": 1
},
{
"begin": 1677,
"end": 1683,
"name": "DUP5",
"source": 1
},
{
"begin": 1637,
"end": 1704,
"name": "PUSH [tag]",
"source": 1,
"value": "48"
},
{
"begin": 1637,
"end": 1704,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1637,
"end": 1704,
"name": "tag",
"source": 1,
"value": "59"
},
{
"begin": 1637,
"end": 1704,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1497,
"end": 1711,
"name": "SWAP3",
"source": 1
},
{
"begin": 1497,
"end": 1711,
"name": "SWAP2",
"source": 1
},
{
"begin": 1497,
"end": 1711,
"name": "POP",
"source": 1
},
{
"begin": 1497,
"end": 1711,
"name": "POP",
"source": 1
},
{
"begin": 1497,
"end": 1711,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1717,
"end": 1816,
"name": "tag",
"source": 1,
"value": "41"
},
{
"begin": 1717,
"end": 1816,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1769,
"end": 1775,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1803,
"end": 1808,
"name": "DUP2",
"source": 1
},
{
"begin": 1797,
"end": 1809,
"name": "MLOAD",
"source": 1
},
{
"begin": 1787,
"end": 1809,
"name": "SWAP1",
"source": 1
},
{
"begin": 1787,
"end": 1809,
"name": "POP",
"source": 1
},
{
"begin": 1717,
"end": 1816,
"name": "SWAP2",
"source": 1
},
{
"begin": 1717,
"end": 1816,
"name": "SWAP1",
"source": 1
},
{
"begin": 1717,
"end": 1816,
"name": "POP",
"source": 1
},
{
"begin": 1717,
"end": 1816,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1822,
"end": 1991,
"name": "tag",
"source": 1,
"value": "43"
},
{
"begin": 1822,
"end": 1991,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1906,
"end": 1917,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1940,
"end": 1946,
"name": "DUP3",
"source": 1
},
{
"begin": 1935,
"end": 1938,
"name": "DUP3",
"source": 1
},
{
"begin": 1928,
"end": 1947,
"name": "MSTORE",
"source": 1
},
{
"begin": 1980,
"end": 1984,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1975,
"end": 1978,
"name": "DUP3",
"source": 1
},
{
"begin": 1971,
"end": 1985,
"name": "ADD",
"source": 1
},
{
"begin": 1956,
"end": 1985,
"name": "SWAP1",
"source": 1
},
{
"begin": 1956,
"end": 1985,
"name": "POP",
"source": 1
},
{
"begin": 1822,
"end": 1991,
"name": "SWAP3",
"source": 1
},
{
"begin": 1822,
"end": 1991,
"name": "SWAP2",
"source": 1
},
{
"begin": 1822,
"end": 1991,
"name": "POP",
"source": 1
},
{
"begin": 1822,
"end": 1991,
"name": "POP",
"source": 1
},
{
"begin": 1822,
"end": 1991,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1997,
"end": 2087,
"name": "tag",
"source": 1,
"value": "33"
},
{
"begin": 1997,
"end": 2087,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2031,
"end": 2038,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2074,
"end": 2079,
"name": "DUP2",
"source": 1
},
{
"begin": 2067,
"end": 2080,
"name": "ISZERO",
"source": 1
},
{
"begin": 2060,
"end": 2081,
"name": "ISZERO",
"source": 1
},
{
"begin": 2049,
"end": 2081,
"name": "SWAP1",
"source": 1
},
{
"begin": 2049,
"end": 2081,
"name": "POP",
"source": 1
},
{
"begin": 1997,
"end": 2087,
"name": "SWAP2",
"source": 1
},
{
"begin": 1997,
"end": 2087,
"name": "SWAP1",
"source": 1
},
{
"begin": 1997,
"end": 2087,
"name": "POP",
"source": 1
},
{
"begin": 1997,
"end": 2087,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2093,
"end": 2170,
"name": "tag",
"source": 1,
"value": "37"
},
{
"begin": 2093,
"end": 2170,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2130,
"end": 2137,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2159,
"end": 2164,
"name": "DUP2",
"source": 1
},
{
"begin": 2148,
"end": 2164,
"name": "SWAP1",
"source": 1
},
{
"begin": 2148,
"end": 2164,
"name": "POP",
"source": 1
},
{
"begin": 2093,
"end": 2170,
"name": "SWAP2",
"source": 1
},
{
"begin": 2093,
"end": 2170,
"name": "SWAP1",
"source": 1
},
{
"begin": 2093,
"end": 2170,
"name": "POP",
"source": 1
},
{
"begin": 2093,
"end": 2170,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2176,
"end": 2262,
"name": "tag",
"source": 1,
"value": "51"
},
{
"begin": 2176,
"end": 2262,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2211,
"end": 2218,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2251,
"end": 2255,
"name": "PUSH",
"source": 1,
"value": "FF"
},
{
"begin": 2244,
"end": 2249,
"name": "DUP3",
"source": 1
},
{
"begin": 2240,
"end": 2256,
"name": "AND",
"source": 1
},
{
"begin": 2229,
"end": 2256,
"name": "SWAP1",
"source": 1
},
{
"begin": 2229,
"end": 2256,
"name": "POP",
"source": 1
},
{
"begin": 2176,
"end": 2262,
"name": "SWAP2",
"source": 1
},
{
"begin": 2176,
"end": 2262,
"name": "SWAP1",
"source": 1
},
{
"begin": 2176,
"end": 2262,
"name": "POP",
"source": 1
},
{
"begin": 2176,
"end": 2262,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2268,
"end": 2575,
"name": "tag",
"source": 1,
"value": "45"
},
{
"begin": 2268,
"end": 2575,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2336,
"end": 2337,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2346,
"end": 2459,
"name": "tag",
"source": 1,
"value": "66"
},
{
"begin": 2346,
"end": 2459,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2360,
"end": 2366,
"name": "DUP4",
"source": 1
},
{
"begin": 2357,
"end": 2358,
"name": "DUP2",
"source": 1
},
{
"begin": 2354,
"end": 2367,
"name": "LT",
"source": 1
},
{
"begin": 2346,
"end": 2459,
"name": "ISZERO",
"source": 1
},
{
"begin": 2346,
"end": 2459,
"name": "PUSH [tag]",
"source": 1,
"value": "68"
},
{
"begin": 2346,
"end": 2459,
"name": "JUMPI",
"source": 1
},
{
"begin": 2445,
"end": 2446,
"name": "DUP1",
"source": 1
},
{
"begin": 2440,
"end": 2443,
"name": "DUP3",
"source": 1
},
{
"begin": 2436,
"end": 2447,
"name": "ADD",
"source": 1
},
{
"begin": 2430,
"end": 2448,
"name": "MLOAD",
"source": 1
},
{
"begin": 2426,
"end": 2427,
"name": "DUP2",
"source": 1
},
{
"begin": 2421,
"end": 2424,
"name": "DUP5",
"source": 1
},
{
"begin": 2417,
"end": 2428,
"name": "ADD",
"source": 1
},
{
"begin": 2410,
"end": 2449,
"name": "MSTORE",
"source": 1
},
{
"begin": 2382,
"end": 2384,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 2379,
"end": 2380,
"name": "DUP2",
"source": 1
},
{
"begin": 2375,
"end": 2385,
"name": "ADD",
"source": 1
},
{
"begin": 2370,
"end": 2385,
"name": "SWAP1",
"source": 1
},
{
"begin": 2370,
"end": 2385,
"name": "POP",
"source": 1
},
{
"begin": 2346,
"end": 2459,
"name": "PUSH [tag]",
"source": 1,
"value": "66"
},
{
"begin": 2346,
"end": 2459,
"name": "JUMP",
"source": 1
},
{
"begin": 2346,
"end": 2459,
"name": "tag",
"source": 1,
"value": "68"
},
{
"begin": 2346,
"end": 2459,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2477,
"end": 2483,
"name": "DUP4",
"source": 1
},
{
"begin": 2474,
"end": 2475,
"name": "DUP2",
"source": 1
},
{
"begin": 2471,
"end": 2484,
"name": "GT",
"source": 1
},
{
"begin": 2468,
"end": 2569,
"name": "ISZERO",
"source": 1
},
{
"begin": 2468,
"end": 2569,
"name": "PUSH [tag]",
"source": 1,
"value": "69"
},
{
"begin": 2468,
"end": 2569,
"name": "JUMPI",
"source": 1
},
{
"begin": 2557,
"end": 2558,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2548,
"end": 2554,
"name": "DUP5",
"source": 1
},
{
"begin": 2543,
"end": 2546,
"name": "DUP5",
"source": 1
},
{
"begin": 2539,
"end": 2555,
"name": "ADD",
"source": 1
},
{
"begin": 2532,
"end": 2559,
"name": "MSTORE",
"source": 1
},
{
"begin": 2468,
"end": 2569,
"name": "tag",
"source": 1,
"value": "69"
},
{
"begin": 2468,
"end": 2569,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2317,
"end": 2575,
"name": "POP",
"source": 1
},
{
"begin": 2268,
"end": 2575,
"name": "POP",
"source": 1
},
{
"begin": 2268,
"end": 2575,
"name": "POP",
"source": 1
},
{
"begin": 2268,
"end": 2575,
"name": "POP",
"source": 1
},
{
"begin": 2268,
"end": 2575,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2581,
"end": 2901,
"name": "tag",
"source": 1,
"value": "24"
},
{
"begin": 2581,
"end": 2901,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2625,
"end": 2631,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2662,
"end": 2663,
"name": "PUSH",
"source": 1,
"value": "2"
},
{
"begin": 2656,
"end": 2660,
"name": "DUP3",
"source": 1
},
{
"begin": 2652,
"end": 2664,
"name": "DIV",
"source": 1
},
{
"begin": 2642,
"end": 2664,
"name": "SWAP1",
"source": 1
},
{
"begin": 2642,
"end": 2664,
"name": "POP",
"source": 1
},
{
"begin": 2709,
"end": 2710,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 2703,
"end": 2707,
"name": "DUP3",
"source": 1
},
{
"begin": 2699,
"end": 2711,
"name": "AND",
"source": 1
},
{
"begin": 2730,
"end": 2748,
"name": "DUP1",
"source": 1
},
{
"begin": 2720,
"end": 2801,
"name": "PUSH [tag]",
"source": 1,
"value": "71"
},
{
"begin": 2720,
"end": 2801,
"name": "JUMPI",
"source": 1
},
{
"begin": 2786,
"end": 2790,
"name": "PUSH",
"source": 1,
"value": "7F"
},
{
"begin": 2778,
"end": 2784,
"name": "DUP3",
"source": 1
},
{
"begin": 2774,
"end": 2791,
"name": "AND",
"source": 1
},
{
"begin": 2764,
"end": 2791,
"name": "SWAP2",
"source": 1
},
{
"begin": 2764,
"end": 2791,
"name": "POP",
"source": 1
},
{
"begin": 2720,
"end": 2801,
"name": "tag",
"source": 1,
"value": "71"
},
{
"begin": 2720,
"end": 2801,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2848,
"end": 2850,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 2840,
"end": 2846,
"name": "DUP3",
"source": 1
},
{
"begin": 2837,
"end": 2851,
"name": "LT",
"source": 1
},
{
"begin": 2817,
"end": 2835,
"name": "DUP2",
"source": 1
},
{
"begin": 2814,
"end": 2852,
"name": "EQ",
"source": 1
},
{
"begin": 2811,
"end": 2895,
"name": "ISZERO",
"source": 1
},
{
"begin": 2811,
"end": 2895,
"name": "PUSH [tag]",
"source": 1,
"value": "72"
},
{
"begin": 2811,
"end": 2895,
"name": "JUMPI",
"source": 1
},
{
"begin": 2867,
"end": 2885,
"name": "PUSH [tag]",
"source": 1,
"value": "73"
},
{
"begin": 2867,
"end": 2885,
"name": "PUSH [tag]",
"source": 1,
"value": "74"
},
{
"begin": 2867,
"end": 2885,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2867,
"end": 2885,
"name": "tag",
"source": 1,
"value": "73"
},
{
"begin": 2867,
"end": 2885,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2811,
"end": 2895,
"name": "tag",
"source": 1,
"value": "72"
},
{
"begin": 2811,
"end": 2895,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2632,
"end": 2901,
"name": "POP",
"source": 1
},
{
"begin": 2581,
"end": 2901,
"name": "SWAP2",
"source": 1
},
{
"begin": 2581,
"end": 2901,
"name": "SWAP1",
"source": 1
},
{
"begin": 2581,
"end": 2901,
"name": "POP",
"source": 1
},
{
"begin": 2581,
"end": 2901,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2907,
"end": 3087,
"name": "tag",
"source": 1,
"value": "74"
},
{
"begin": 2907,
"end": 3087,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2955,
"end": 3032,
"name": "PUSH",
"source": 1,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 2952,
"end": 2953,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2945,
"end": 3033,
"name": "MSTORE",
"source": 1
},
{
"begin": 3052,
"end": 3056,
"name": "PUSH",
"source": 1,
"value": "22"
},
{
"begin": 3049,
"end": 3050,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 3042,
"end": 3057,
"name": "MSTORE",
"source": 1
},
{
"begin": 3076,
"end": 3080,
"name": "PUSH",
"source": 1,
"value": "24"
},
{
"begin": 3073,
"end": 3074,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 3066,
"end": 3081,
"name": "REVERT",
"source": 1
},
{
"begin": 3093,
"end": 3195,
"name": "tag",
"source": 1,
"value": "47"
},
{
"begin": 3093,
"end": 3195,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3134,
"end": 3140,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 3185,
"end": 3187,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 3181,
"end": 3188,
"name": "NOT",
"source": 1
},
{
"begin": 3176,
"end": 3178,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 3169,
"end": 3174,
"name": "DUP4",
"source": 1
},
{
"begin": 3165,
"end": 3179,
"name": "ADD",
"source": 1
},
{
"begin": 3161,
"end": 3189,
"name": "AND",
"source": 1
},
{
"begin": 3151,
"end": 3189,
"name": "SWAP1",
"source": 1
},
{
"begin": 3151,
"end": 3189,
"name": "POP",
"source": 1
},
{
"begin": 3093,
"end": 3195,
"name": "SWAP2",
"source": 1
},
{
"begin": 3093,
"end": 3195,
"name": "SWAP1",
"source": 1
},
{
"begin": 3093,
"end": 3195,
"name": "POP",
"source": 1
},
{
"begin": 3093,
"end": 3195,
"name": "JUMP",
"source": 1,
"value": "[out]"
}
]
}
}
},
"methodIdentifiers": {
"b()": "4df7e3d0",
"bool_true()": "5760fa05",
"hashing()": "cd97d84e",
"str_public()": "b83d07b7"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"b\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bool_true\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hashing\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"str_public\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/first_contract.sol\":\"variables_modifiers\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/first_contract.sol\":{\"keccak256\":\"0x0e04ec4c0591e96f53d60d529a32a74ec148c3f6ba8822b4db3f9c12f82f1cb4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a9e5df166ff9afa359dc787b8db76fe3680373353042430ba0077c7c66c35907\",\"dweb:/ipfs/QmPbndCZq4NxeWvsWs4NSmYbcXYTSt35RfJMxBmUx5oTKe\"]}},\"version\":1}",
"storageLayout": {
"storage": [
{
"astId": 3,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "a",
"offset": 0,
"slot": "0",
"type": "t_uint256"
},
{
"astId": 6,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "b",
"offset": 0,
"slot": "1",
"type": "t_uint8"
},
{
"astId": 8,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "c",
"offset": 0,
"slot": "2",
"type": "t_int256"
},
{
"astId": 12,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "d",
"offset": 0,
"slot": "3",
"type": "t_int8"
},
{
"astId": 15,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "e",
"offset": 0,
"slot": "4",
"type": "t_int256"
},
{
"astId": 17,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "str",
"offset": 0,
"slot": "5",
"type": "t_string_storage"
},
{
"astId": 20,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "str_public",
"offset": 0,
"slot": "6",
"type": "t_string_storage"
},
{
"astId": 23,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "str_private",
"offset": 0,
"slot": "7",
"type": "t_string_storage"
},
{
"astId": 25,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "boolean",
"offset": 0,
"slot": "8",
"type": "t_bool"
},
{
"astId": 28,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "bool_true",
"offset": 1,
"slot": "8",
"type": "t_bool"
},
{
"astId": 31,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "bool_false",
"offset": 2,
"slot": "8",
"type": "t_bool"
},
{
"astId": 33,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "first_bytes",
"offset": 0,
"slot": "9",
"type": "t_bytes32"
},
{
"astId": 35,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "second_bytes",
"offset": 0,
"slot": "10",
"type": "t_bytes4"
},
{
"astId": 37,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "byte_one",
"offset": 4,
"slot": "10",
"type": "t_bytes1"
},
{
"astId": 45,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "hashing",
"offset": 0,
"slot": "11",
"type": "t_bytes32"
}
],
"types": {
"t_bool": {
"encoding": "inplace",
"label": "bool",
"numberOfBytes": "1"
},
"t_bytes1": {
"encoding": "inplace",
"label": "bytes1",
"numberOfBytes": "1"
},
"t_bytes32": {
"encoding": "inplace",
"label": "bytes32",
"numberOfBytes": "32"
},
"t_bytes4": {
"encoding": "inplace",
"label": "bytes4",
"numberOfBytes": "4"
},
"t_int256": {
"encoding": "inplace",
"label": "int256",
"numberOfBytes": "32"
},
"t_int8": {
"encoding": "inplace",
"label": "int8",
"numberOfBytes": "1"
},
"t_string_storage": {
"encoding": "bytes",
"label": "string",
"numberOfBytes": "32"
},
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
},
"t_uint8": {
"encoding": "inplace",
"label": "uint8",
"numberOfBytes": "1"
}
}
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
}
}
},
"sources": {
"contracts/first_contract.sol": {
"ast": {
"absolutePath": "contracts/first_contract.sol",
"exportedSymbols": {
"variables_modifiers": [
46
]
},
"id": 47,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1,
"literals": [
"solidity",
"^",
"0.8",
".4"
],
"nodeType": "PragmaDirective",
"src": "33:23:0"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"fullyImplemented": true,
"id": 46,
"linearizedBaseContracts": [
46
],
"name": "variables_modifiers",
"nameLocation": "69:19:0",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 3,
"mutability": "mutable",
"name": "a",
"nameLocation": "190:1:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "182:9:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "182:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"functionSelector": "4df7e3d0",
"id": 6,
"mutability": "mutable",
"name": "b",
"nameLocation": "211:1:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "198:18:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
},
"typeName": {
"id": 4,
"name": "uint8",
"nodeType": "ElementaryTypeName",
"src": "198:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
}
},
"value": {
"hexValue": "33",
"id": 5,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "215:1:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_3_by_1",
"typeString": "int_const 3"
},
"value": "3"
},
"visibility": "public"
},
{
"constant": false,
"id": 8,
"mutability": "mutable",
"name": "c",
"nameLocation": "258:1:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "251:8:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 7,
"name": "int256",
"nodeType": "ElementaryTypeName",
"src": "251:6:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 12,
"mutability": "mutable",
"name": "d",
"nameLocation": "271:1:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "266:12:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int8",
"typeString": "int8"
},
"typeName": {
"id": 9,
"name": "int8",
"nodeType": "ElementaryTypeName",
"src": "266:4:0",
"typeDescriptions": {
"typeIdentifier": "t_int8",
"typeString": "int8"
}
},
"value": {
"id": 11,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "-",
"prefix": true,
"src": "275:3:0",
"subExpression": {
"hexValue": "3332",
"id": 10,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "276:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_32_by_1",
"typeString": "int_const 32"
},
"value": "32"
},
"typeDescriptions": {
"typeIdentifier": "t_rational_minus_32_by_1",
"typeString": "int_const -32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 15,
"mutability": "mutable",
"name": "e",
"nameLocation": "289:1:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "285:10:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 13,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "285:3:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"value": {
"hexValue": "3635",
"id": 14,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "293:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_65_by_1",
"typeString": "int_const 65"
},
"value": "65"
},
"visibility": "internal"
},
{
"constant": false,
"id": 17,
"mutability": "mutable",
"name": "str",
"nameLocation": "327:3:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "320:10:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 16,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "320:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"visibility": "internal"
},
{
"constant": false,
"functionSelector": "b83d07b7",
"id": 20,
"mutability": "mutable",
"name": "str_public",
"nameLocation": "351:10:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "337:42:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 18,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "337:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": {
"hexValue": "537472696e67207075626c6963",
"id": 19,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "364:15:0",
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_3ff21ace200c96ee380c4b4d62366dd83e191763e7a96ec5f010b3382ffe46ee",
"typeString": "literal_string \"String public\""
},
"value": "String public"
},
"visibility": "public"
},
{
"constant": false,
"id": 23,
"mutability": "mutable",
"name": "str_private",
"nameLocation": "401:11:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "386:45:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 21,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "386:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": {
"hexValue": "537472696e672050726976617465",
"id": 22,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "415:16:0",
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_c781ff008639eff08bbca5cef189d4b833814f0caf0a6437ccb8fa7f31c9b31b",
"typeString": "literal_string \"String Private\""
},
"value": "String Private"
},
"visibility": "private"
},
{
"constant": false,
"id": 25,
"mutability": "mutable",
"name": "boolean",
"nameLocation": "460:7:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "455:12:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 24,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "455:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"visibility": "internal"
},
{
"constant": false,
"functionSelector": "5760fa05",
"id": 28,
"mutability": "mutable",
"name": "bool_true",
"nameLocation": "486:9:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "474:28:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 26,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "474:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": {
"hexValue": "74727565",
"id": 27,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "498:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"visibility": "public"
},
{
"constant": false,
"id": 31,
"mutability": "mutable",
"name": "bool_false",
"nameLocation": "522:10:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "509:31:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 29,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "509:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": {
"hexValue": "66616c7365",
"id": 30,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "535:5:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
"visibility": "private"
},
{
"constant": false,
"id": 33,
"mutability": "mutable",
"name": "first_bytes",
"nameLocation": "570:11:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "562:19:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 32,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "562:7:0",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 35,
"mutability": "mutable",
"name": "second_bytes",
"nameLocation": "595:12:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "588:19:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes4",
"typeString": "bytes4"
},
"typeName": {
"id": 34,
"name": "bytes4",
"nodeType": "ElementaryTypeName",
"src": "588:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bytes4",
"typeString": "bytes4"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 37,
"mutability": "mutable",
"name": "byte_one",
"nameLocation": "621:8:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "614:15:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes1",
"typeString": "bytes1"
},
"typeName": {
"id": 36,
"name": "bytes1",
"nodeType": "ElementaryTypeName",
"src": "614:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bytes1",
"typeString": "bytes1"
}
},
"visibility": "internal"
},
{
"constant": false,
"functionSelector": "cd97d84e",
"id": 45,
"mutability": "mutable",
"name": "hashing",
"nameLocation": "676:7:0",
"nodeType": "VariableDeclaration",
"scope": 46,
"src": "661:66:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 38,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "661:7:0",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": {
"arguments": [
{
"arguments": [
{
"hexValue": "48656c6c6f20776f7264",
"id": 42,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "713:12:0",
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785",
"typeString": "literal_string \"Hello word\""
},
"value": "Hello word"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785",
"typeString": "literal_string \"Hello word\""
}
],
"expression": {
"id": 40,
"name": "abi",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4294967295,
"src": "696:3:0",
"typeDescriptions": {
"typeIdentifier": "t_magic_abi",
"typeString": "abi"
}
},
"id": 41,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"memberName": "encodePacked",
"nodeType": "MemberAccess",
"src": "696:16:0",
"typeDescriptions": {
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
"typeString": "function () pure returns (bytes memory)"
}
},
"id": 43,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "696:30:0",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_bytes_memory_ptr",
"typeString": "bytes memory"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bytes_memory_ptr",
"typeString": "bytes memory"
}
],
"id": 39,
"name": "keccak256",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4294967288,
"src": "686:9:0",
"typeDescriptions": {
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
"typeString": "function (bytes memory) pure returns (bytes32)"
}
},
"id": 44,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "686:41:0",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"visibility": "public"
}
],
"scope": 47,
"src": "60:673:0",
"usedErrors": []
}
],
"src": "33:700:0"
},
"id": 0
}
}
}
}
{
"id": "48d26fe42241290cf1104245ec2343c9",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.7",
"solcLongVersion": "0.8.7+commit.e28d00a7",
"input": {
"language": "Solidity",
"sources": {
"contracts/first_contract.sol": {
"content": "// SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.4;\r\n\r\ncontract variables_modifiers {\r\n\r\n // Value intenger (uint)\r\n // Reserved uint8 a uint256\r\n // Default 256 \r\n uint256 a;\r\n uint8 public b = 3;\r\n\r\n // Value integer sig\r\n int256 c;\r\n int8 d = -32;\r\n int e = 65;\r\n\r\n // String \r\n string str;\r\n string public str_public = \"String public\";\r\n string private str_private = \"String Private\";\r\n\r\n //Boolean\r\n bool boolean;\r\n bool public bool_true = true;\r\n bool private bool_false = false;\r\n\r\n}"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/first_contract.sol": {
"variables_modifiers": {
"abi": [
{
"inputs": [],
"name": "b",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "bool_true",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "str_public",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/first_contract.sol\":60:546 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n /* \"contracts/first_contract.sol\":215:216 3 */\n 0x03\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n 0x01\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0xff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":275:278 -32 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0\n /* \"contracts/first_contract.sol\":266:278 int8 d = -32 */\n 0x03\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0x00\n signextend\n 0xff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":293:295 65 */\n 0x41\n /* \"contracts/first_contract.sol\":285:295 int e = 65 */\n 0x04\n sstore\n /* \"contracts/first_contract.sol\":337:379 string public str_public = \"String public\" */\n mload(0x40)\n dup1\n 0x40\n add\n 0x40\n mstore\n dup1\n 0x0d\n dup2\n mstore\n 0x20\n add\n 0x537472696e67207075626c696300000000000000000000000000000000000000\n dup2\n mstore\n pop\n 0x06\n swap1\n dup1\n mload\n swap1\n 0x20\n add\n swap1\n tag_1\n swap3\n swap2\n swap1\n tag_2\n jump\t// in\ntag_1:\n pop\n /* \"contracts/first_contract.sol\":386:431 string private str_private = \"String Private\" */\n mload(0x40)\n dup1\n 0x40\n add\n 0x40\n mstore\n dup1\n 0x0e\n dup2\n mstore\n 0x20\n add\n 0x537472696e672050726976617465000000000000000000000000000000000000\n dup2\n mstore\n pop\n 0x07\n swap1\n dup1\n mload\n swap1\n 0x20\n add\n swap1\n tag_3\n swap3\n swap2\n swap1\n tag_2\n jump\t// in\ntag_3:\n pop\n /* \"contracts/first_contract.sol\":498:502 true */\n 0x01\n /* \"contracts/first_contract.sol\":474:502 bool public bool_true = true */\n 0x08\n exp(0x0100, 0x01)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n iszero\n iszero\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":535:540 false */\n 0x00\n /* \"contracts/first_contract.sol\":509:540 bool private bool_false = false */\n 0x08\n exp(0x0100, 0x02)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n iszero\n iszero\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":60:546 contract variables_modifiers {\r... */\n callvalue\n dup1\n iszero\n tag_4\n jumpi\n 0x00\n dup1\n revert\ntag_4:\n pop\n jump(tag_5)\ntag_2:\n dup3\n dup1\n sload\n tag_6\n swap1\n tag_7\n jump\t// in\ntag_6:\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n 0x1f\n add\n 0x20\n swap1\n div\n dup2\n add\n swap3\n dup3\n tag_9\n jumpi\n 0x00\n dup6\n sstore\n jump(tag_8)\ntag_9:\n dup3\n 0x1f\n lt\n tag_10\n jumpi\n dup1\n mload\n not(0xff)\n and\n dup4\n dup1\n add\n or\n dup6\n sstore\n jump(tag_8)\ntag_10:\n dup3\n dup1\n add\n 0x01\n add\n dup6\n sstore\n dup3\n iszero\n tag_8\n jumpi\n swap2\n dup3\n add\ntag_11:\n dup3\n dup2\n gt\n iszero\n tag_12\n jumpi\n dup3\n mload\n dup3\n sstore\n swap2\n 0x20\n add\n swap2\n swap1\n 0x01\n add\n swap1\n jump(tag_11)\ntag_12:\ntag_8:\n pop\n swap1\n pop\n tag_13\n swap2\n swap1\n tag_14\n jump\t// in\ntag_13:\n pop\n swap1\n jump\t// out\ntag_14:\ntag_15:\n dup1\n dup3\n gt\n iszero\n tag_16\n jumpi\n 0x00\n dup2\n 0x00\n swap1\n sstore\n pop\n 0x01\n add\n jump(tag_15)\ntag_16:\n pop\n swap1\n jump\t// out\n /* \"#utility.yul\":7:327 */\ntag_7:\n /* \"#utility.yul\":51:57 */\n 0x00\n /* \"#utility.yul\":88:89 */\n 0x02\n /* \"#utility.yul\":82:86 */\n dup3\n /* \"#utility.yul\":78:90 */\n div\n /* \"#utility.yul\":68:90 */\n swap1\n pop\n /* \"#utility.yul\":135:136 */\n 0x01\n /* \"#utility.yul\":129:133 */\n dup3\n /* \"#utility.yul\":125:137 */\n and\n /* \"#utility.yul\":156:174 */\n dup1\n /* \"#utility.yul\":146:227 */\n tag_19\n jumpi\n /* \"#utility.yul\":212:216 */\n 0x7f\n /* \"#utility.yul\":204:210 */\n dup3\n /* \"#utility.yul\":200:217 */\n and\n /* \"#utility.yul\":190:217 */\n swap2\n pop\n /* \"#utility.yul\":146:227 */\ntag_19:\n /* \"#utility.yul\":274:276 */\n 0x20\n /* \"#utility.yul\":266:272 */\n dup3\n /* \"#utility.yul\":263:277 */\n lt\n /* \"#utility.yul\":243:261 */\n dup2\n /* \"#utility.yul\":240:278 */\n eq\n /* \"#utility.yul\":237:321 */\n iszero\n tag_20\n jumpi\n /* \"#utility.yul\":293:311 */\n tag_21\n tag_22\n jump\t// in\ntag_21:\n /* \"#utility.yul\":237:321 */\ntag_20:\n /* \"#utility.yul\":58:327 */\n pop\n /* \"#utility.yul\":7:327 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":333:513 */\ntag_22:\n /* \"#utility.yul\":381:458 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":378:379 */\n 0x00\n /* \"#utility.yul\":371:459 */\n mstore\n /* \"#utility.yul\":478:482 */\n 0x22\n /* \"#utility.yul\":475:476 */\n 0x04\n /* \"#utility.yul\":468:483 */\n mstore\n /* \"#utility.yul\":502:506 */\n 0x24\n /* \"#utility.yul\":499:500 */\n 0x00\n /* \"#utility.yul\":492:507 */\n revert\n /* \"contracts/first_contract.sol\":60:546 contract variables_modifiers {\r... */\ntag_5:\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/first_contract.sol\":60:546 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x4df7e3d0\n eq\n tag_3\n jumpi\n dup1\n 0x5760fa05\n eq\n tag_4\n jumpi\n dup1\n 0xb83d07b7\n eq\n tag_5\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n tag_3:\n tag_6\n tag_7\n jump\t// in\n tag_6:\n mload(0x40)\n tag_8\n swap2\n swap1\n tag_9\n jump\t// in\n tag_8:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":474:502 bool public bool_true = true */\n tag_4:\n tag_10\n tag_11\n jump\t// in\n tag_10:\n mload(0x40)\n tag_12\n swap2\n swap1\n tag_13\n jump\t// in\n tag_12:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":337:379 string public str_public = \"String public\" */\n tag_5:\n tag_14\n tag_15\n jump\t// in\n tag_14:\n mload(0x40)\n tag_16\n swap2\n swap1\n tag_17\n jump\t// in\n tag_16:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n tag_7:\n 0x01\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":474:502 bool public bool_true = true */\n tag_11:\n 0x08\n 0x01\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":337:379 string public str_public = \"String public\" */\n tag_15:\n 0x06\n dup1\n sload\n tag_18\n swap1\n tag_19\n jump\t// in\n tag_18:\n dup1\n 0x1f\n add\n 0x20\n dup1\n swap2\n div\n mul\n 0x20\n add\n mload(0x40)\n swap1\n dup2\n add\n 0x40\n mstore\n dup1\n swap3\n swap2\n swap1\n dup2\n dup2\n mstore\n 0x20\n add\n dup3\n dup1\n sload\n tag_20\n swap1\n tag_19\n jump\t// in\n tag_20:\n dup1\n iszero\n tag_21\n jumpi\n dup1\n 0x1f\n lt\n tag_22\n jumpi\n 0x0100\n dup1\n dup4\n sload\n div\n mul\n dup4\n mstore\n swap2\n 0x20\n add\n swap2\n jump(tag_21)\n tag_22:\n dup3\n add\n swap2\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n tag_23:\n dup2\n sload\n dup2\n mstore\n swap1\n 0x01\n add\n swap1\n 0x20\n add\n dup1\n dup4\n gt\n tag_23\n jumpi\n dup3\n swap1\n sub\n 0x1f\n and\n dup3\n add\n swap2\n tag_21:\n pop\n pop\n pop\n pop\n pop\n dup2\n jump\t// out\n /* \"#utility.yul\":7:116 */\n tag_25:\n /* \"#utility.yul\":88:109 */\n tag_27\n /* \"#utility.yul\":103:108 */\n dup2\n /* \"#utility.yul\":88:109 */\n tag_28\n jump\t// in\n tag_27:\n /* \"#utility.yul\":83:86 */\n dup3\n /* \"#utility.yul\":76:110 */\n mstore\n /* \"#utility.yul\":7:116 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":122:486 */\n tag_29:\n /* \"#utility.yul\":210:213 */\n 0x00\n /* \"#utility.yul\":238:277 */\n tag_31\n /* \"#utility.yul\":271:276 */\n dup3\n /* \"#utility.yul\":238:277 */\n tag_32\n jump\t// in\n tag_31:\n /* \"#utility.yul\":293:364 */\n tag_33\n /* \"#utility.yul\":357:363 */\n dup2\n /* \"#utility.yul\":352:355 */\n dup6\n /* \"#utility.yul\":293:364 */\n tag_34\n jump\t// in\n tag_33:\n /* \"#utility.yul\":286:364 */\n swap4\n pop\n /* \"#utility.yul\":373:425 */\n tag_35\n /* \"#utility.yul\":418:424 */\n dup2\n /* \"#utility.yul\":413:416 */\n dup6\n /* \"#utility.yul\":406:410 */\n 0x20\n /* \"#utility.yul\":399:404 */\n dup7\n /* \"#utility.yul\":395:411 */\n add\n /* \"#utility.yul\":373:425 */\n tag_36\n jump\t// in\n tag_35:\n /* \"#utility.yul\":450:479 */\n tag_37\n /* \"#utility.yul\":472:478 */\n dup2\n /* \"#utility.yul\":450:479 */\n tag_38\n jump\t// in\n tag_37:\n /* \"#utility.yul\":445:448 */\n dup5\n /* \"#utility.yul\":441:480 */\n add\n /* \"#utility.yul\":434:480 */\n swap2\n pop\n /* \"#utility.yul\":214:486 */\n pop\n /* \"#utility.yul\":122:486 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":492:604 */\n tag_39:\n /* \"#utility.yul\":575:597 */\n tag_41\n /* \"#utility.yul\":591:596 */\n dup2\n /* \"#utility.yul\":575:597 */\n tag_42\n jump\t// in\n tag_41:\n /* \"#utility.yul\":570:573 */\n dup3\n /* \"#utility.yul\":563:598 */\n mstore\n /* \"#utility.yul\":492:604 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":610:820 */\n tag_13:\n /* \"#utility.yul\":697:701 */\n 0x00\n /* \"#utility.yul\":735:737 */\n 0x20\n /* \"#utility.yul\":724:733 */\n dup3\n /* \"#utility.yul\":720:738 */\n add\n /* \"#utility.yul\":712:738 */\n swap1\n pop\n /* \"#utility.yul\":748:813 */\n tag_44\n /* \"#utility.yul\":810:811 */\n 0x00\n /* \"#utility.yul\":799:808 */\n dup4\n /* \"#utility.yul\":795:812 */\n add\n /* \"#utility.yul\":786:792 */\n dup5\n /* \"#utility.yul\":748:813 */\n tag_25\n jump\t// in\n tag_44:\n /* \"#utility.yul\":610:820 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":826:1139 */\n tag_17:\n /* \"#utility.yul\":939:943 */\n 0x00\n /* \"#utility.yul\":977:979 */\n 0x20\n /* \"#utility.yul\":966:975 */\n dup3\n /* \"#utility.yul\":962:980 */\n add\n /* \"#utility.yul\":954:980 */\n swap1\n pop\n /* \"#utility.yul\":1026:1035 */\n dup2\n /* \"#utility.yul\":1020:1024 */\n dup2\n /* \"#utility.yul\":1016:1036 */\n sub\n /* \"#utility.yul\":1012:1013 */\n 0x00\n /* \"#utility.yul\":1001:1010 */\n dup4\n /* \"#utility.yul\":997:1014 */\n add\n /* \"#utility.yul\":990:1037 */\n mstore\n /* \"#utility.yul\":1054:1132 */\n tag_46\n /* \"#utility.yul\":1127:1131 */\n dup2\n /* \"#utility.yul\":1118:1124 */\n dup5\n /* \"#utility.yul\":1054:1132 */\n tag_29\n jump\t// in\n tag_46:\n /* \"#utility.yul\":1046:1132 */\n swap1\n pop\n /* \"#utility.yul\":826:1139 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1145:1359 */\n tag_9:\n /* \"#utility.yul\":1234:1238 */\n 0x00\n /* \"#utility.yul\":1272:1274 */\n 0x20\n /* \"#utility.yul\":1261:1270 */\n dup3\n /* \"#utility.yul\":1257:1275 */\n add\n /* \"#utility.yul\":1249:1275 */\n swap1\n pop\n /* \"#utility.yul\":1285:1352 */\n tag_48\n /* \"#utility.yul\":1349:1350 */\n 0x00\n /* \"#utility.yul\":1338:1347 */\n dup4\n /* \"#utility.yul\":1334:1351 */\n add\n /* \"#utility.yul\":1325:1331 */\n dup5\n /* \"#utility.yul\":1285:1352 */\n tag_39\n jump\t// in\n tag_48:\n /* \"#utility.yul\":1145:1359 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1365:1464 */\n tag_32:\n /* \"#utility.yul\":1417:1423 */\n 0x00\n /* \"#utility.yul\":1451:1456 */\n dup2\n /* \"#utility.yul\":1445:1457 */\n mload\n /* \"#utility.yul\":1435:1457 */\n swap1\n pop\n /* \"#utility.yul\":1365:1464 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1470:1639 */\n tag_34:\n /* \"#utility.yul\":1554:1565 */\n 0x00\n /* \"#utility.yul\":1588:1594 */\n dup3\n /* \"#utility.yul\":1583:1586 */\n dup3\n /* \"#utility.yul\":1576:1595 */\n mstore\n /* \"#utility.yul\":1628:1632 */\n 0x20\n /* \"#utility.yul\":1623:1626 */\n dup3\n /* \"#utility.yul\":1619:1633 */\n add\n /* \"#utility.yul\":1604:1633 */\n swap1\n pop\n /* \"#utility.yul\":1470:1639 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1645:1735 */\n tag_28:\n /* \"#utility.yul\":1679:1686 */\n 0x00\n /* \"#utility.yul\":1722:1727 */\n dup2\n /* \"#utility.yul\":1715:1728 */\n iszero\n /* \"#utility.yul\":1708:1729 */\n iszero\n /* \"#utility.yul\":1697:1729 */\n swap1\n pop\n /* \"#utility.yul\":1645:1735 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1741:1827 */\n tag_42:\n /* \"#utility.yul\":1776:1783 */\n 0x00\n /* \"#utility.yul\":1816:1820 */\n 0xff\n /* \"#utility.yul\":1809:1814 */\n dup3\n /* \"#utility.yul\":1805:1821 */\n and\n /* \"#utility.yul\":1794:1821 */\n swap1\n pop\n /* \"#utility.yul\":1741:1827 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1833:2140 */\n tag_36:\n /* \"#utility.yul\":1901:1902 */\n 0x00\n /* \"#utility.yul\":1911:2024 */\n tag_54:\n /* \"#utility.yul\":1925:1931 */\n dup4\n /* \"#utility.yul\":1922:1923 */\n dup2\n /* \"#utility.yul\":1919:1932 */\n lt\n /* \"#utility.yul\":1911:2024 */\n iszero\n tag_56\n jumpi\n /* \"#utility.yul\":2010:2011 */\n dup1\n /* \"#utility.yul\":2005:2008 */\n dup3\n /* \"#utility.yul\":2001:2012 */\n add\n /* \"#utility.yul\":1995:2013 */\n mload\n /* \"#utility.yul\":1991:1992 */\n dup2\n /* \"#utility.yul\":1986:1989 */\n dup5\n /* \"#utility.yul\":1982:1993 */\n add\n /* \"#utility.yul\":1975:2014 */\n mstore\n /* \"#utility.yul\":1947:1949 */\n 0x20\n /* \"#utility.yul\":1944:1945 */\n dup2\n /* \"#utility.yul\":1940:1950 */\n add\n /* \"#utility.yul\":1935:1950 */\n swap1\n pop\n /* \"#utility.yul\":1911:2024 */\n jump(tag_54)\n tag_56:\n /* \"#utility.yul\":2042:2048 */\n dup4\n /* \"#utility.yul\":2039:2040 */\n dup2\n /* \"#utility.yul\":2036:2049 */\n gt\n /* \"#utility.yul\":2033:2134 */\n iszero\n tag_57\n jumpi\n /* \"#utility.yul\":2122:2123 */\n 0x00\n /* \"#utility.yul\":2113:2119 */\n dup5\n /* \"#utility.yul\":2108:2111 */\n dup5\n /* \"#utility.yul\":2104:2120 */\n add\n /* \"#utility.yul\":2097:2124 */\n mstore\n /* \"#utility.yul\":2033:2134 */\n tag_57:\n /* \"#utility.yul\":1882:2140 */\n pop\n /* \"#utility.yul\":1833:2140 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2146:2466 */\n tag_19:\n /* \"#utility.yul\":2190:2196 */\n 0x00\n /* \"#utility.yul\":2227:2228 */\n 0x02\n /* \"#utility.yul\":2221:2225 */\n dup3\n /* \"#utility.yul\":2217:2229 */\n div\n /* \"#utility.yul\":2207:2229 */\n swap1\n pop\n /* \"#utility.yul\":2274:2275 */\n 0x01\n /* \"#utility.yul\":2268:2272 */\n dup3\n /* \"#utility.yul\":2264:2276 */\n and\n /* \"#utility.yul\":2295:2313 */\n dup1\n /* \"#utility.yul\":2285:2366 */\n tag_59\n jumpi\n /* \"#utility.yul\":2351:2355 */\n 0x7f\n /* \"#utility.yul\":2343:2349 */\n dup3\n /* \"#utility.yul\":2339:2356 */\n and\n /* \"#utility.yul\":2329:2356 */\n swap2\n pop\n /* \"#utility.yul\":2285:2366 */\n tag_59:\n /* \"#utility.yul\":2413:2415 */\n 0x20\n /* \"#utility.yul\":2405:2411 */\n dup3\n /* \"#utility.yul\":2402:2416 */\n lt\n /* \"#utility.yul\":2382:2400 */\n dup2\n /* \"#utility.yul\":2379:2417 */\n eq\n /* \"#utility.yul\":2376:2460 */\n iszero\n tag_60\n jumpi\n /* \"#utility.yul\":2432:2450 */\n tag_61\n tag_62\n jump\t// in\n tag_61:\n /* \"#utility.yul\":2376:2460 */\n tag_60:\n /* \"#utility.yul\":2197:2466 */\n pop\n /* \"#utility.yul\":2146:2466 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2472:2652 */\n tag_62:\n /* \"#utility.yul\":2520:2597 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":2517:2518 */\n 0x00\n /* \"#utility.yul\":2510:2598 */\n mstore\n /* \"#utility.yul\":2617:2621 */\n 0x22\n /* \"#utility.yul\":2614:2615 */\n 0x04\n /* \"#utility.yul\":2607:2622 */\n mstore\n /* \"#utility.yul\":2641:2645 */\n 0x24\n /* \"#utility.yul\":2638:2639 */\n 0x00\n /* \"#utility.yul\":2631:2646 */\n revert\n /* \"#utility.yul\":2658:2760 */\n tag_38:\n /* \"#utility.yul\":2699:2705 */\n 0x00\n /* \"#utility.yul\":2750:2752 */\n 0x1f\n /* \"#utility.yul\":2746:2753 */\n not\n /* \"#utility.yul\":2741:2743 */\n 0x1f\n /* \"#utility.yul\":2734:2739 */\n dup4\n /* \"#utility.yul\":2730:2744 */\n add\n /* \"#utility.yul\":2726:2754 */\n and\n /* \"#utility.yul\":2716:2754 */\n swap1\n pop\n /* \"#utility.yul\":2658:2760 */\n swap2\n swap1\n pop\n jump\t// out\n\n auxdata: 0xa2646970667358221220298111b1d192932a9bb486113df3fcc35bc780282f06646d1ec0194988149bcf64736f6c63430008070033\n}\n",
"bytecode": {
"functionDebugData": {
"extract_byte_array_length": {
"entryPoint": 486,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x22": {
"entryPoint": 536,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:516:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "58:269:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "68:22:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "82:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "88:1:1",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "78:3:1"
},
"nodeType": "YulFunctionCall",
"src": "78:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "68:6:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "99:38:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "129:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "135:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "125:3:1"
},
"nodeType": "YulFunctionCall",
"src": "125:12:1"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulTypedName",
"src": "103:18:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "176:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "190:27:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "204:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "212:4:1",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "200:3:1"
},
"nodeType": "YulFunctionCall",
"src": "200:17:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "190:6:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "156:18:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "149:6:1"
},
"nodeType": "YulFunctionCall",
"src": "149:26:1"
},
"nodeType": "YulIf",
"src": "146:81:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "279:42:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x22",
"nodeType": "YulIdentifier",
"src": "293:16:1"
},
"nodeType": "YulFunctionCall",
"src": "293:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "293:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "243:18:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "266:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "274:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "263:2:1"
},
"nodeType": "YulFunctionCall",
"src": "263:14:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "240:2:1"
},
"nodeType": "YulFunctionCall",
"src": "240:38:1"
},
"nodeType": "YulIf",
"src": "237:84:1"
}
]
},
"name": "extract_byte_array_length",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "42:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "51:6:1",
"type": ""
}
],
"src": "7:320:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "361:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "378:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "381:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "371:6:1"
},
"nodeType": "YulFunctionCall",
"src": "371:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "371:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "475:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "478:4:1",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "468:6:1"
},
"nodeType": "YulFunctionCall",
"src": "468:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "468:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "499:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "502:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "492:6:1"
},
"nodeType": "YulFunctionCall",
"src": "492:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "492:15:1"
}
]
},
"name": "panic_error_0x22",
"nodeType": "YulFunctionDefinition",
"src": "333:180:1"
}
]
},
"contents": "{\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"linkReferences": {},
"object": "60806040526003600160006101000a81548160ff021916908360ff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0600360006101000a81548160ff021916908360000b60ff16021790555060416004556040518060400160405280600d81526020017f537472696e67207075626c696300000000000000000000000000000000000000815250600690805190602001906100ae929190610143565b506040518060400160405280600e81526020017f537472696e672050726976617465000000000000000000000000000000000000815250600790805190602001906100fa929190610143565b506001600860016101000a81548160ff0219169083151502179055506000600860026101000a81548160ff02191690831515021790555034801561013d57600080fd5b50610247565b82805461014f906101e6565b90600052602060002090601f01602090048101928261017157600085556101b8565b82601f1061018a57805160ff19168380011785556101b8565b828001600101855582156101b8579182015b828111156101b757825182559160200191906001019061019c565b5b5090506101c591906101c9565b5090565b5b808211156101e25760008160009055506001016101ca565b5090565b600060028204905060018216806101fe57607f821691505b6020821081141561021257610211610218565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b610313806102566000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80634df7e3d0146100465780635760fa0514610064578063b83d07b714610082575b600080fd5b61004e6100a0565b60405161005b91906101e8565b60405180910390f35b61006c6100b3565b60405161007991906101ab565b60405180910390f35b61008a6100c6565b60405161009791906101c6565b60405180910390f35b600160009054906101000a900460ff1681565b600860019054906101000a900460ff1681565b600680546100d39061026b565b80601f01602080910402602001604051908101604052809291908181526020018280546100ff9061026b565b801561014c5780601f106101215761010080835404028352916020019161014c565b820191906000526020600020905b81548152906001019060200180831161012f57829003601f168201915b505050505081565b61015d8161021f565b82525050565b600061016e82610203565b610178818561020e565b9350610188818560208601610238565b610191816102cc565b840191505092915050565b6101a58161022b565b82525050565b60006020820190506101c06000830184610154565b92915050565b600060208201905081810360008301526101e08184610163565b905092915050565b60006020820190506101fd600083018461019c565b92915050565b600081519050919050565b600082825260208201905092915050565b60008115159050919050565b600060ff82169050919050565b60005b8381101561025657808201518184015260208101905061023b565b83811115610265576000848401525b50505050565b6000600282049050600182168061028357607f821691505b602082108114156102975761029661029d565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f830116905091905056fea2646970667358221220298111b1d192932a9bb486113df3fcc35bc780282f06646d1ec0194988149bcf64736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x3 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x3 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0x0 SIGNEXTEND PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x41 PUSH1 0x4 SSTORE PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xD DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x537472696E67207075626C696300000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x6 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xAE SWAP3 SWAP2 SWAP1 PUSH2 0x143 JUMP JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xE DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x537472696E672050726976617465000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x7 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xFA SWAP3 SWAP2 SWAP1 PUSH2 0x143 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x8 PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x8 PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP CALLVALUE DUP1 ISZERO PUSH2 0x13D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x247 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x14F SWAP1 PUSH2 0x1E6 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x171 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1B8 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x18A JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1B8 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1B8 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1B7 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x19C JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1C5 SWAP2 SWAP1 PUSH2 0x1C9 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x1E2 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1CA JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x1FE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x212 JUMPI PUSH2 0x211 PUSH2 0x218 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x313 DUP1 PUSH2 0x256 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x4DF7E3D0 EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x5760FA05 EQ PUSH2 0x64 JUMPI DUP1 PUSH4 0xB83D07B7 EQ PUSH2 0x82 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4E PUSH2 0xA0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5B SWAP2 SWAP1 PUSH2 0x1E8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6C PUSH2 0xB3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x79 SWAP2 SWAP1 PUSH2 0x1AB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8A PUSH2 0xC6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x97 SWAP2 SWAP1 PUSH2 0x1C6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x8 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x6 DUP1 SLOAD PUSH2 0xD3 SWAP1 PUSH2 0x26B JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xFF SWAP1 PUSH2 0x26B JUMP JUMPDEST DUP1 ISZERO PUSH2 0x14C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x121 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x14C JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x12F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH2 0x15D DUP2 PUSH2 0x21F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x16E DUP3 PUSH2 0x203 JUMP JUMPDEST PUSH2 0x178 DUP2 DUP6 PUSH2 0x20E JUMP JUMPDEST SWAP4 POP PUSH2 0x188 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x238 JUMP JUMPDEST PUSH2 0x191 DUP2 PUSH2 0x2CC JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1A5 DUP2 PUSH2 0x22B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x154 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1E0 DUP2 DUP5 PUSH2 0x163 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1FD PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x19C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x256 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x23B JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x265 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x283 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x297 JUMPI PUSH2 0x296 PUSH2 0x29D JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x29 DUP2 GT 0xB1 0xD1 SWAP3 SWAP4 0x2A SWAP12 0xB4 DUP7 GT RETURNDATASIZE RETURN 0xFC 0xC3 JUMPDEST 0xC7 DUP1 0x28 0x2F MOD PUSH5 0x6D1EC01949 DUP9 EQ SWAP12 0xCF PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ",
"sourceMap": "60:486:0:-:0;;;215:1;198:18;;;;;;;;;;;;;;;;;;;;275:3;266:12;;;;;;;;;;;;;;;;;;;;;;293:2;285:10;;337:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;386:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;498:4;474:28;;;;;;;;;;;;;;;;;;;;535:5;509:31;;;;;;;;;;;;;;;;;;;;60:486;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:320:1:-;51:6;88:1;82:4;78:12;68:22;;135:1;129:4;125:12;156:18;146:81;;212:4;204:6;200:17;190:27;;146:81;274:2;266:6;263:14;243:18;240:38;237:84;;;293:18;;:::i;:::-;237:84;58:269;7:320;;;:::o;333:180::-;381:77;378:1;371:88;478:4;475:1;468:15;502:4;499:1;492:15;60:486:0;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@b_6": {
"entryPoint": 160,
"id": 6,
"parameterSlots": 0,
"returnSlots": 0
},
"@bool_true_28": {
"entryPoint": 179,
"id": 28,
"parameterSlots": 0,
"returnSlots": 0
},
"@str_public_20": {
"entryPoint": 198,
"id": 20,
"parameterSlots": 0,
"returnSlots": 0
},
"abi_encode_t_bool_to_t_bool_fromStack": {
"entryPoint": 340,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": {
"entryPoint": 355,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_uint8_to_t_uint8_fromStack": {
"entryPoint": 412,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": {
"entryPoint": 427,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 454,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed": {
"entryPoint": 488,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"array_length_t_string_memory_ptr": {
"entryPoint": 515,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 526,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_bool": {
"entryPoint": 543,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint8": {
"entryPoint": 555,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"copy_memory_to_memory": {
"entryPoint": 568,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"extract_byte_array_length": {
"entryPoint": 619,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x22": {
"entryPoint": 669,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"round_up_to_mul_of_32": {
"entryPoint": 716,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:2763:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "66:50:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "83:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "103:5:1"
}
],
"functionName": {
"name": "cleanup_t_bool",
"nodeType": "YulIdentifier",
"src": "88:14:1"
},
"nodeType": "YulFunctionCall",
"src": "88:21:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "76:6:1"
},
"nodeType": "YulFunctionCall",
"src": "76:34:1"
},
"nodeType": "YulExpressionStatement",
"src": "76:34:1"
}
]
},
"name": "abi_encode_t_bool_to_t_bool_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "54:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "61:3:1",
"type": ""
}
],
"src": "7:109:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "214:272:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "224:53:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "271:5:1"
}
],
"functionName": {
"name": "array_length_t_string_memory_ptr",
"nodeType": "YulIdentifier",
"src": "238:32:1"
},
"nodeType": "YulFunctionCall",
"src": "238:39:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "228:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "286:78:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "352:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "357:6:1"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "293:58:1"
},
"nodeType": "YulFunctionCall",
"src": "293:71:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "286:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "399:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "406:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "395:3:1"
},
"nodeType": "YulFunctionCall",
"src": "395:16:1"
},
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "413:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "418:6:1"
}
],
"functionName": {
"name": "copy_memory_to_memory",
"nodeType": "YulIdentifier",
"src": "373:21:1"
},
"nodeType": "YulFunctionCall",
"src": "373:52:1"
},
"nodeType": "YulExpressionStatement",
"src": "373:52:1"
},
{
"nodeType": "YulAssignment",
"src": "434:46:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "445:3:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "472:6:1"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nodeType": "YulIdentifier",
"src": "450:21:1"
},
"nodeType": "YulFunctionCall",
"src": "450:29:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "441:3:1"
},
"nodeType": "YulFunctionCall",
"src": "441:39:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "434:3:1"
}
]
}
]
},
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "195:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "202:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "210:3:1",
"type": ""
}
],
"src": "122:364:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "553:51:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "570:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "591:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint8",
"nodeType": "YulIdentifier",
"src": "575:15:1"
},
"nodeType": "YulFunctionCall",
"src": "575:22:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "563:6:1"
},
"nodeType": "YulFunctionCall",
"src": "563:35:1"
},
"nodeType": "YulExpressionStatement",
"src": "563:35:1"
}
]
},
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "541:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "548:3:1",
"type": ""
}
],
"src": "492:112:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "702:118:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "712:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "724:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "735:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "720:3:1"
},
"nodeType": "YulFunctionCall",
"src": "720:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "712:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "786:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "799:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "810:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "795:3:1"
},
"nodeType": "YulFunctionCall",
"src": "795:17:1"
}
],
"functionName": {
"name": "abi_encode_t_bool_to_t_bool_fromStack",
"nodeType": "YulIdentifier",
"src": "748:37:1"
},
"nodeType": "YulFunctionCall",
"src": "748:65:1"
},
"nodeType": "YulExpressionStatement",
"src": "748:65:1"
}
]
},
"name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "674:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "686:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "697:4:1",
"type": ""
}
],
"src": "610:210:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "944:195:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "954:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "966:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "977:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "962:3:1"
},
"nodeType": "YulFunctionCall",
"src": "962:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "954:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1001:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1012:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "997:3:1"
},
"nodeType": "YulFunctionCall",
"src": "997:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1020:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1026:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1016:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1016:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "990:6:1"
},
"nodeType": "YulFunctionCall",
"src": "990:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "990:47:1"
},
{
"nodeType": "YulAssignment",
"src": "1046:86:1",
"value": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1118:6:1"
},
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1127:4:1"
}
],
"functionName": {
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "1054:63:1"
},
"nodeType": "YulFunctionCall",
"src": "1054:78:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1046:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "916:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "928:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "939:4:1",
"type": ""
}
],
"src": "826:313:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1239:120:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1249:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1261:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1272:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1257:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1257:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1249:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1325:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1338:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1349:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1334:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1334:17:1"
}
],
"functionName": {
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nodeType": "YulIdentifier",
"src": "1285:39:1"
},
"nodeType": "YulFunctionCall",
"src": "1285:67:1"
},
"nodeType": "YulExpressionStatement",
"src": "1285:67:1"
}
]
},
"name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1211:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1223:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "1234:4:1",
"type": ""
}
],
"src": "1145:214:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1424:40:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1435:22:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1451:5:1"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "1445:5:1"
},
"nodeType": "YulFunctionCall",
"src": "1445:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1435:6:1"
}
]
}
]
},
"name": "array_length_t_string_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1407:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "1417:6:1",
"type": ""
}
],
"src": "1365:99:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1566:73:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1583:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1588:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1576:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1576:19:1"
},
"nodeType": "YulExpressionStatement",
"src": "1576:19:1"
},
{
"nodeType": "YulAssignment",
"src": "1604:29:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1623:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1628:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1619:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1619:14:1"
},
"variableNames": [
{
"name": "updated_pos",
"nodeType": "YulIdentifier",
"src": "1604:11:1"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "1538:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "1543:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nodeType": "YulTypedName",
"src": "1554:11:1",
"type": ""
}
],
"src": "1470:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1687:48:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1697:32:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1722:5:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "1715:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1715:13:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "1708:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1708:21:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "1697:7:1"
}
]
}
]
},
"name": "cleanup_t_bool",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1669:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "1679:7:1",
"type": ""
}
],
"src": "1645:90:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1784:43:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1794:27:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1809:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1816:4:1",
"type": "",
"value": "0xff"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "1805:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1805:16:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "1794:7:1"
}
]
}
]
},
"name": "cleanup_t_uint8",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1766:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "1776:7:1",
"type": ""
}
],
"src": "1741:86:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1882:258:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1892:10:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "1901:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "i",
"nodeType": "YulTypedName",
"src": "1896:1:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "1961:63:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "1986:3:1"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "1991:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1982:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1982:11:1"
},
{
"arguments": [
{
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "2005:3:1"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2010:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2001:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2001:11:1"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "1995:5:1"
},
"nodeType": "YulFunctionCall",
"src": "1995:18:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1975:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1975:39:1"
},
"nodeType": "YulExpressionStatement",
"src": "1975:39:1"
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "1922:1:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1925:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "1919:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1919:13:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "1933:19:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1935:15:1",
"value": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "1944:1:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1947:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1940:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1940:10:1"
},
"variableNames": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "1935:1:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "1915:3:1",
"statements": []
},
"src": "1911:113:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2058:76:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "2108:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2113:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2104:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2104:16:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2122:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2097:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2097:27:1"
},
"nodeType": "YulExpressionStatement",
"src": "2097:27:1"
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2039:1:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2042:6:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "2036:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2036:13:1"
},
"nodeType": "YulIf",
"src": "2033:101:1"
}
]
},
"name": "copy_memory_to_memory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "1864:3:1",
"type": ""
},
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "1869:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "1874:6:1",
"type": ""
}
],
"src": "1833:307:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2197:269:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2207:22:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "2221:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2227:1:1",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "2217:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2217:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2207:6:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "2238:38:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "2268:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2274:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2264:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2264:12:1"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulTypedName",
"src": "2242:18:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "2315:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2329:27:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2343:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2351:4:1",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2339:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2339:17:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2329:6:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "2295:18:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2288:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2288:26:1"
},
"nodeType": "YulIf",
"src": "2285:81:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2418:42:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x22",
"nodeType": "YulIdentifier",
"src": "2432:16:1"
},
"nodeType": "YulFunctionCall",
"src": "2432:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "2432:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "2382:18:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2405:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2413:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "2402:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2402:14:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "2379:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2379:38:1"
},
"nodeType": "YulIf",
"src": "2376:84:1"
}
]
},
"name": "extract_byte_array_length",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "2181:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2190:6:1",
"type": ""
}
],
"src": "2146:320:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2500:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2517:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2520:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2510:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2510:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "2510:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2614:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2617:4:1",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2607:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2607:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "2607:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2638:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2641:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "2631:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2631:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "2631:15:1"
}
]
},
"name": "panic_error_0x22",
"nodeType": "YulFunctionDefinition",
"src": "2472:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2706:54:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2716:38:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2734:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2741:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2730:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2730:14:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2750:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "2746:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2746:7:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2726:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2726:28:1"
},
"variableNames": [
{
"name": "result",
"nodeType": "YulIdentifier",
"src": "2716:6:1"
}
]
}
]
},
"name": "round_up_to_mul_of_32",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2689:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nodeType": "YulTypedName",
"src": "2699:6:1",
"type": ""
}
],
"src": "2658:102:1"
}
]
},
"contents": "{\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_uint8_to_t_uint8_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint8(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint8_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "608060405234801561001057600080fd5b50600436106100415760003560e01c80634df7e3d0146100465780635760fa0514610064578063b83d07b714610082575b600080fd5b61004e6100a0565b60405161005b91906101e8565b60405180910390f35b61006c6100b3565b60405161007991906101ab565b60405180910390f35b61008a6100c6565b60405161009791906101c6565b60405180910390f35b600160009054906101000a900460ff1681565b600860019054906101000a900460ff1681565b600680546100d39061026b565b80601f01602080910402602001604051908101604052809291908181526020018280546100ff9061026b565b801561014c5780601f106101215761010080835404028352916020019161014c565b820191906000526020600020905b81548152906001019060200180831161012f57829003601f168201915b505050505081565b61015d8161021f565b82525050565b600061016e82610203565b610178818561020e565b9350610188818560208601610238565b610191816102cc565b840191505092915050565b6101a58161022b565b82525050565b60006020820190506101c06000830184610154565b92915050565b600060208201905081810360008301526101e08184610163565b905092915050565b60006020820190506101fd600083018461019c565b92915050565b600081519050919050565b600082825260208201905092915050565b60008115159050919050565b600060ff82169050919050565b60005b8381101561025657808201518184015260208101905061023b565b83811115610265576000848401525b50505050565b6000600282049050600182168061028357607f821691505b602082108114156102975761029661029d565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f830116905091905056fea2646970667358221220298111b1d192932a9bb486113df3fcc35bc780282f06646d1ec0194988149bcf64736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x4DF7E3D0 EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x5760FA05 EQ PUSH2 0x64 JUMPI DUP1 PUSH4 0xB83D07B7 EQ PUSH2 0x82 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4E PUSH2 0xA0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5B SWAP2 SWAP1 PUSH2 0x1E8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6C PUSH2 0xB3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x79 SWAP2 SWAP1 PUSH2 0x1AB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8A PUSH2 0xC6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x97 SWAP2 SWAP1 PUSH2 0x1C6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x8 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x6 DUP1 SLOAD PUSH2 0xD3 SWAP1 PUSH2 0x26B JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xFF SWAP1 PUSH2 0x26B JUMP JUMPDEST DUP1 ISZERO PUSH2 0x14C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x121 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x14C JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x12F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH2 0x15D DUP2 PUSH2 0x21F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x16E DUP3 PUSH2 0x203 JUMP JUMPDEST PUSH2 0x178 DUP2 DUP6 PUSH2 0x20E JUMP JUMPDEST SWAP4 POP PUSH2 0x188 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x238 JUMP JUMPDEST PUSH2 0x191 DUP2 PUSH2 0x2CC JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1A5 DUP2 PUSH2 0x22B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x154 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x1E0 DUP2 DUP5 PUSH2 0x163 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1FD PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x19C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x256 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x23B JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x265 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x283 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x297 JUMPI PUSH2 0x296 PUSH2 0x29D JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x29 DUP2 GT 0xB1 0xD1 SWAP3 SWAP4 0x2A SWAP12 0xB4 DUP7 GT RETURNDATASIZE RETURN 0xFC 0xC3 JUMPDEST 0xC7 DUP1 0x28 0x2F MOD PUSH5 0x6D1EC01949 DUP9 EQ SWAP12 0xCF PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ",
"sourceMap": "60:486:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;198:18;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;474:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;337:42;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;198:18;;;;;;;;;;;;;:::o;474:28::-;;;;;;;;;;;;;:::o;337:42::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7:109:1:-;88:21;103:5;88:21;:::i;:::-;83:3;76:34;7:109;;:::o;122:364::-;210:3;238:39;271:5;238:39;:::i;:::-;293:71;357:6;352:3;293:71;:::i;:::-;286:78;;373:52;418:6;413:3;406:4;399:5;395:16;373:52;:::i;:::-;450:29;472:6;450:29;:::i;:::-;445:3;441:39;434:46;;214:272;122:364;;;;:::o;492:112::-;575:22;591:5;575:22;:::i;:::-;570:3;563:35;492:112;;:::o;610:210::-;697:4;735:2;724:9;720:18;712:26;;748:65;810:1;799:9;795:17;786:6;748:65;:::i;:::-;610:210;;;;:::o;826:313::-;939:4;977:2;966:9;962:18;954:26;;1026:9;1020:4;1016:20;1012:1;1001:9;997:17;990:47;1054:78;1127:4;1118:6;1054:78;:::i;:::-;1046:86;;826:313;;;;:::o;1145:214::-;1234:4;1272:2;1261:9;1257:18;1249:26;;1285:67;1349:1;1338:9;1334:17;1325:6;1285:67;:::i;:::-;1145:214;;;;:::o;1365:99::-;1417:6;1451:5;1445:12;1435:22;;1365:99;;;:::o;1470:169::-;1554:11;1588:6;1583:3;1576:19;1628:4;1623:3;1619:14;1604:29;;1470:169;;;;:::o;1645:90::-;1679:7;1722:5;1715:13;1708:21;1697:32;;1645:90;;;:::o;1741:86::-;1776:7;1816:4;1809:5;1805:16;1794:27;;1741:86;;;:::o;1833:307::-;1901:1;1911:113;1925:6;1922:1;1919:13;1911:113;;;2010:1;2005:3;2001:11;1995:18;1991:1;1986:3;1982:11;1975:39;1947:2;1944:1;1940:10;1935:15;;1911:113;;;2042:6;2039:1;2036:13;2033:101;;;2122:1;2113:6;2108:3;2104:16;2097:27;2033:101;1882:258;1833:307;;;:::o;2146:320::-;2190:6;2227:1;2221:4;2217:12;2207:22;;2274:1;2268:4;2264:12;2295:18;2285:81;;2351:4;2343:6;2339:17;2329:27;;2285:81;2413:2;2405:6;2402:14;2382:18;2379:38;2376:84;;;2432:18;;:::i;:::-;2376:84;2197:269;2146:320;;;:::o;2472:180::-;2520:77;2517:1;2510:88;2617:4;2614:1;2607:15;2641:4;2638:1;2631:15;2658:102;2699:6;2750:2;2746:7;2741:2;2734:5;2730:14;2726:28;2716:38;;2658:102;;;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "157400",
"executionCost": "infinite",
"totalCost": "infinite"
},
"external": {
"b()": "2449",
"bool_true()": "2521",
"str_public()": "infinite"
}
},
"legacyAssembly": {
".code": [
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 546,
"name": "MSTORE",
"source": 0
},
{
"begin": 215,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "3"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 198,
"end": 216,
"name": "EXP",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "NOT",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP4",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "OR",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SSTORE",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "POP",
"source": 0
},
{
"begin": 275,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0"
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "3"
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 266,
"end": 278,
"name": "EXP",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "DUP2",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SLOAD",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "DUP2",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 266,
"end": 278,
"name": "MUL",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "NOT",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "AND",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SWAP1",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "DUP4",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 266,
"end": 278,
"name": "SIGNEXTEND",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 266,
"end": 278,
"name": "AND",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "MUL",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "OR",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SWAP1",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SSTORE",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "POP",
"source": 0
},
{
"begin": 293,
"end": 295,
"name": "PUSH",
"source": 0,
"value": "41"
},
{
"begin": 285,
"end": 295,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 285,
"end": 295,
"name": "SSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "D"
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "537472696E67207075626C696300000000000000000000000000000000000000"
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "6"
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 337,
"end": 379,
"name": "SWAP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 386,
"end": 431,
"name": "MLOAD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 386,
"end": 431,
"name": "ADD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 386,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "E"
},
{
"begin": 386,
"end": 431,
"name": "DUP2",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 386,
"end": 431,
"name": "ADD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "537472696E672050726976617465000000000000000000000000000000000000"
},
{
"begin": 386,
"end": 431,
"name": "DUP2",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "POP",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "7"
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "MLOAD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 386,
"end": 431,
"name": "ADD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 386,
"end": 431,
"name": "SWAP3",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP2",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 386,
"end": 431,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 386,
"end": 431,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 386,
"end": 431,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "POP",
"source": 0
},
{
"begin": 498,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "8"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 474,
"end": 502,
"name": "EXP",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 474,
"end": 502,
"name": "MUL",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "NOT",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "AND",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP4",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "ISZERO",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "ISZERO",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "MUL",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "OR",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SSTORE",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "POP",
"source": 0
},
{
"begin": 535,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "8"
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 509,
"end": 540,
"name": "EXP",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "DUP2",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SLOAD",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "DUP2",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 509,
"end": 540,
"name": "MUL",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "NOT",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "AND",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SWAP1",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "DUP4",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "ISZERO",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "ISZERO",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "MUL",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "OR",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SWAP1",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SSTORE",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "REVERT",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 60,
"end": 546,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SLOAD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 60,
"end": 546,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "MSTORE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "KECCAK256",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 60,
"end": 546,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DIV",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP2",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "DUP6",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 60,
"end": 546,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "9"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 60,
"end": 546,
"name": "LT",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "MLOAD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 60,
"end": 546,
"name": "NOT",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "AND",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP4",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "OR",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP6",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 60,
"end": 546,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 546,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP6",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP2",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "GT",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "MLOAD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 60,
"end": 546,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 546,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 60,
"end": 546,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "12"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 60,
"end": 546,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 60,
"end": 546,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "14"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "15"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "GT",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "16"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "DUP2",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 546,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "15"
},
{
"begin": 60,
"end": 546,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "16"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 7,
"end": 327,
"name": "tag",
"source": 1,
"value": "7"
},
{
"begin": 7,
"end": 327,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 51,
"end": 57,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 88,
"end": 89,
"name": "PUSH",
"source": 1,
"value": "2"
},
{
"begin": 82,
"end": 86,
"name": "DUP3",
"source": 1
},
{
"begin": 78,
"end": 90,
"name": "DIV",
"source": 1
},
{
"begin": 68,
"end": 90,
"name": "SWAP1",
"source": 1
},
{
"begin": 68,
"end": 90,
"name": "POP",
"source": 1
},
{
"begin": 135,
"end": 136,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 129,
"end": 133,
"name": "DUP3",
"source": 1
},
{
"begin": 125,
"end": 137,
"name": "AND",
"source": 1
},
{
"begin": 156,
"end": 174,
"name": "DUP1",
"source": 1
},
{
"begin": 146,
"end": 227,
"name": "PUSH [tag]",
"source": 1,
"value": "19"
},
{
"begin": 146,
"end": 227,
"name": "JUMPI",
"source": 1
},
{
"begin": 212,
"end": 216,
"name": "PUSH",
"source": 1,
"value": "7F"
},
{
"begin": 204,
"end": 210,
"name": "DUP3",
"source": 1
},
{
"begin": 200,
"end": 217,
"name": "AND",
"source": 1
},
{
"begin": 190,
"end": 217,
"name": "SWAP2",
"source": 1
},
{
"begin": 190,
"end": 217,
"name": "POP",
"source": 1
},
{
"begin": 146,
"end": 227,
"name": "tag",
"source": 1,
"value": "19"
},
{
"begin": 146,
"end": 227,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 274,
"end": 276,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 266,
"end": 272,
"name": "DUP3",
"source": 1
},
{
"begin": 263,
"end": 277,
"name": "LT",
"source": 1
},
{
"begin": 243,
"end": 261,
"name": "DUP2",
"source": 1
},
{
"begin": 240,
"end": 278,
"name": "EQ",
"source": 1
},
{
"begin": 237,
"end": 321,
"name": "ISZERO",
"source": 1
},
{
"begin": 237,
"end": 321,
"name": "PUSH [tag]",
"source": 1,
"value": "20"
},
{
"begin": 237,
"end": 321,
"name": "JUMPI",
"source": 1
},
{
"begin": 293,
"end": 311,
"name": "PUSH [tag]",
"source": 1,
"value": "21"
},
{
"begin": 293,
"end": 311,
"name": "PUSH [tag]",
"source": 1,
"value": "22"
},
{
"begin": 293,
"end": 311,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 293,
"end": 311,
"name": "tag",
"source": 1,
"value": "21"
},
{
"begin": 293,
"end": 311,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 237,
"end": 321,
"name": "tag",
"source": 1,
"value": "20"
},
{
"begin": 237,
"end": 321,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 58,
"end": 327,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 327,
"name": "SWAP2",
"source": 1
},
{
"begin": 7,
"end": 327,
"name": "SWAP1",
"source": 1
},
{
"begin": 7,
"end": 327,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 327,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 333,
"end": 513,
"name": "tag",
"source": 1,
"value": "22"
},
{
"begin": 333,
"end": 513,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 381,
"end": 458,
"name": "PUSH",
"source": 1,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 378,
"end": 379,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 371,
"end": 459,
"name": "MSTORE",
"source": 1
},
{
"begin": 478,
"end": 482,
"name": "PUSH",
"source": 1,
"value": "22"
},
{
"begin": 475,
"end": 476,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 468,
"end": 483,
"name": "MSTORE",
"source": 1
},
{
"begin": 502,
"end": 506,
"name": "PUSH",
"source": 1,
"value": "24"
},
{
"begin": 499,
"end": 500,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 492,
"end": 507,
"name": "REVERT",
"source": 1
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "CODECOPY",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a2646970667358221220298111b1d192932a9bb486113df3fcc35bc780282f06646d1ec0194988149bcf64736f6c63430008070033",
".code": [
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 546,
"name": "MSTORE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "REVERT",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 60,
"end": 546,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "LT",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 60,
"end": 546,
"name": "SHR",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "4DF7E3D0"
},
{
"begin": 60,
"end": 546,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "5760FA05"
},
{
"begin": 60,
"end": 546,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "B83D07B7"
},
{
"begin": 60,
"end": 546,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 60,
"end": 546,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 546,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 546,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 546,
"name": "REVERT",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 198,
"end": 216,
"name": "MLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 198,
"end": 216,
"name": "SWAP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 198,
"end": 216,
"name": "MLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SUB",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "RETURN",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 474,
"end": 502,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 474,
"end": 502,
"name": "MLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 474,
"end": 502,
"name": "SWAP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 474,
"end": 502,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "12"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 474,
"end": 502,
"name": "MLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SUB",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "RETURN",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "15"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "14"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "16"
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "16"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SUB",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "RETURN",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 198,
"end": 216,
"name": "EXP",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DIV",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "8"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 474,
"end": 502,
"name": "EXP",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DIV",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 474,
"end": 502,
"name": "AND",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "15"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "6"
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "18"
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "18"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DIV",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MUL",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ISZERO",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "21"
},
{
"begin": 337,
"end": 379,
"name": "JUMPI",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 337,
"end": 379,
"name": "LT",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "22"
},
{
"begin": 337,
"end": 379,
"name": "JUMPI",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP4",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DIV",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MUL",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP4",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "21"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "22"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 337,
"end": 379,
"name": "KECCAK256",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "23"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP4",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "GT",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "23"
},
{
"begin": 337,
"end": 379,
"name": "JUMPI",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SUB",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 337,
"end": 379,
"name": "AND",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "21"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 7,
"end": 116,
"name": "tag",
"source": 1,
"value": "25"
},
{
"begin": 7,
"end": 116,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 88,
"end": 109,
"name": "PUSH [tag]",
"source": 1,
"value": "27"
},
{
"begin": 103,
"end": 108,
"name": "DUP2",
"source": 1
},
{
"begin": 88,
"end": 109,
"name": "PUSH [tag]",
"source": 1,
"value": "28"
},
{
"begin": 88,
"end": 109,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 88,
"end": 109,
"name": "tag",
"source": 1,
"value": "27"
},
{
"begin": 88,
"end": 109,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 83,
"end": 86,
"name": "DUP3",
"source": 1
},
{
"begin": 76,
"end": 110,
"name": "MSTORE",
"source": 1
},
{
"begin": 7,
"end": 116,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 116,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 116,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 122,
"end": 486,
"name": "tag",
"source": 1,
"value": "29"
},
{
"begin": 122,
"end": 486,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 210,
"end": 213,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 238,
"end": 277,
"name": "PUSH [tag]",
"source": 1,
"value": "31"
},
{
"begin": 271,
"end": 276,
"name": "DUP3",
"source": 1
},
{
"begin": 238,
"end": 277,
"name": "PUSH [tag]",
"source": 1,
"value": "32"
},
{
"begin": 238,
"end": 277,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 238,
"end": 277,
"name": "tag",
"source": 1,
"value": "31"
},
{
"begin": 238,
"end": 277,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 293,
"end": 364,
"name": "PUSH [tag]",
"source": 1,
"value": "33"
},
{
"begin": 357,
"end": 363,
"name": "DUP2",
"source": 1
},
{
"begin": 352,
"end": 355,
"name": "DUP6",
"source": 1
},
{
"begin": 293,
"end": 364,
"name": "PUSH [tag]",
"source": 1,
"value": "34"
},
{
"begin": 293,
"end": 364,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 293,
"end": 364,
"name": "tag",
"source": 1,
"value": "33"
},
{
"begin": 293,
"end": 364,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 286,
"end": 364,
"name": "SWAP4",
"source": 1
},
{
"begin": 286,
"end": 364,
"name": "POP",
"source": 1
},
{
"begin": 373,
"end": 425,
"name": "PUSH [tag]",
"source": 1,
"value": "35"
},
{
"begin": 418,
"end": 424,
"name": "DUP2",
"source": 1
},
{
"begin": 413,
"end": 416,
"name": "DUP6",
"source": 1
},
{
"begin": 406,
"end": 410,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 399,
"end": 404,
"name": "DUP7",
"source": 1
},
{
"begin": 395,
"end": 411,
"name": "ADD",
"source": 1
},
{
"begin": 373,
"end": 425,
"name": "PUSH [tag]",
"source": 1,
"value": "36"
},
{
"begin": 373,
"end": 425,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 373,
"end": 425,
"name": "tag",
"source": 1,
"value": "35"
},
{
"begin": 373,
"end": 425,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 450,
"end": 479,
"name": "PUSH [tag]",
"source": 1,
"value": "37"
},
{
"begin": 472,
"end": 478,
"name": "DUP2",
"source": 1
},
{
"begin": 450,
"end": 479,
"name": "PUSH [tag]",
"source": 1,
"value": "38"
},
{
"begin": 450,
"end": 479,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 450,
"end": 479,
"name": "tag",
"source": 1,
"value": "37"
},
{
"begin": 450,
"end": 479,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 445,
"end": 448,
"name": "DUP5",
"source": 1
},
{
"begin": 441,
"end": 480,
"name": "ADD",
"source": 1
},
{
"begin": 434,
"end": 480,
"name": "SWAP2",
"source": 1
},
{
"begin": 434,
"end": 480,
"name": "POP",
"source": 1
},
{
"begin": 214,
"end": 486,
"name": "POP",
"source": 1
},
{
"begin": 122,
"end": 486,
"name": "SWAP3",
"source": 1
},
{
"begin": 122,
"end": 486,
"name": "SWAP2",
"source": 1
},
{
"begin": 122,
"end": 486,
"name": "POP",
"source": 1
},
{
"begin": 122,
"end": 486,
"name": "POP",
"source": 1
},
{
"begin": 122,
"end": 486,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 492,
"end": 604,
"name": "tag",
"source": 1,
"value": "39"
},
{
"begin": 492,
"end": 604,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 575,
"end": 597,
"name": "PUSH [tag]",
"source": 1,
"value": "41"
},
{
"begin": 591,
"end": 596,
"name": "DUP2",
"source": 1
},
{
"begin": 575,
"end": 597,
"name": "PUSH [tag]",
"source": 1,
"value": "42"
},
{
"begin": 575,
"end": 597,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 575,
"end": 597,
"name": "tag",
"source": 1,
"value": "41"
},
{
"begin": 575,
"end": 597,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 570,
"end": 573,
"name": "DUP3",
"source": 1
},
{
"begin": 563,
"end": 598,
"name": "MSTORE",
"source": 1
},
{
"begin": 492,
"end": 604,
"name": "POP",
"source": 1
},
{
"begin": 492,
"end": 604,
"name": "POP",
"source": 1
},
{
"begin": 492,
"end": 604,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 610,
"end": 820,
"name": "tag",
"source": 1,
"value": "13"
},
{
"begin": 610,
"end": 820,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 697,
"end": 701,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 735,
"end": 737,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 724,
"end": 733,
"name": "DUP3",
"source": 1
},
{
"begin": 720,
"end": 738,
"name": "ADD",
"source": 1
},
{
"begin": 712,
"end": 738,
"name": "SWAP1",
"source": 1
},
{
"begin": 712,
"end": 738,
"name": "POP",
"source": 1
},
{
"begin": 748,
"end": 813,
"name": "PUSH [tag]",
"source": 1,
"value": "44"
},
{
"begin": 810,
"end": 811,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 799,
"end": 808,
"name": "DUP4",
"source": 1
},
{
"begin": 795,
"end": 812,
"name": "ADD",
"source": 1
},
{
"begin": 786,
"end": 792,
"name": "DUP5",
"source": 1
},
{
"begin": 748,
"end": 813,
"name": "PUSH [tag]",
"source": 1,
"value": "25"
},
{
"begin": 748,
"end": 813,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 748,
"end": 813,
"name": "tag",
"source": 1,
"value": "44"
},
{
"begin": 748,
"end": 813,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 610,
"end": 820,
"name": "SWAP3",
"source": 1
},
{
"begin": 610,
"end": 820,
"name": "SWAP2",
"source": 1
},
{
"begin": 610,
"end": 820,
"name": "POP",
"source": 1
},
{
"begin": 610,
"end": 820,
"name": "POP",
"source": 1
},
{
"begin": 610,
"end": 820,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 826,
"end": 1139,
"name": "tag",
"source": 1,
"value": "17"
},
{
"begin": 826,
"end": 1139,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 939,
"end": 943,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 977,
"end": 979,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 966,
"end": 975,
"name": "DUP3",
"source": 1
},
{
"begin": 962,
"end": 980,
"name": "ADD",
"source": 1
},
{
"begin": 954,
"end": 980,
"name": "SWAP1",
"source": 1
},
{
"begin": 954,
"end": 980,
"name": "POP",
"source": 1
},
{
"begin": 1026,
"end": 1035,
"name": "DUP2",
"source": 1
},
{
"begin": 1020,
"end": 1024,
"name": "DUP2",
"source": 1
},
{
"begin": 1016,
"end": 1036,
"name": "SUB",
"source": 1
},
{
"begin": 1012,
"end": 1013,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1001,
"end": 1010,
"name": "DUP4",
"source": 1
},
{
"begin": 997,
"end": 1014,
"name": "ADD",
"source": 1
},
{
"begin": 990,
"end": 1037,
"name": "MSTORE",
"source": 1
},
{
"begin": 1054,
"end": 1132,
"name": "PUSH [tag]",
"source": 1,
"value": "46"
},
{
"begin": 1127,
"end": 1131,
"name": "DUP2",
"source": 1
},
{
"begin": 1118,
"end": 1124,
"name": "DUP5",
"source": 1
},
{
"begin": 1054,
"end": 1132,
"name": "PUSH [tag]",
"source": 1,
"value": "29"
},
{
"begin": 1054,
"end": 1132,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1054,
"end": 1132,
"name": "tag",
"source": 1,
"value": "46"
},
{
"begin": 1054,
"end": 1132,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1046,
"end": 1132,
"name": "SWAP1",
"source": 1
},
{
"begin": 1046,
"end": 1132,
"name": "POP",
"source": 1
},
{
"begin": 826,
"end": 1139,
"name": "SWAP3",
"source": 1
},
{
"begin": 826,
"end": 1139,
"name": "SWAP2",
"source": 1
},
{
"begin": 826,
"end": 1139,
"name": "POP",
"source": 1
},
{
"begin": 826,
"end": 1139,
"name": "POP",
"source": 1
},
{
"begin": 826,
"end": 1139,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1145,
"end": 1359,
"name": "tag",
"source": 1,
"value": "9"
},
{
"begin": 1145,
"end": 1359,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1234,
"end": 1238,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1272,
"end": 1274,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1261,
"end": 1270,
"name": "DUP3",
"source": 1
},
{
"begin": 1257,
"end": 1275,
"name": "ADD",
"source": 1
},
{
"begin": 1249,
"end": 1275,
"name": "SWAP1",
"source": 1
},
{
"begin": 1249,
"end": 1275,
"name": "POP",
"source": 1
},
{
"begin": 1285,
"end": 1352,
"name": "PUSH [tag]",
"source": 1,
"value": "48"
},
{
"begin": 1349,
"end": 1350,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1338,
"end": 1347,
"name": "DUP4",
"source": 1
},
{
"begin": 1334,
"end": 1351,
"name": "ADD",
"source": 1
},
{
"begin": 1325,
"end": 1331,
"name": "DUP5",
"source": 1
},
{
"begin": 1285,
"end": 1352,
"name": "PUSH [tag]",
"source": 1,
"value": "39"
},
{
"begin": 1285,
"end": 1352,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1285,
"end": 1352,
"name": "tag",
"source": 1,
"value": "48"
},
{
"begin": 1285,
"end": 1352,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1145,
"end": 1359,
"name": "SWAP3",
"source": 1
},
{
"begin": 1145,
"end": 1359,
"name": "SWAP2",
"source": 1
},
{
"begin": 1145,
"end": 1359,
"name": "POP",
"source": 1
},
{
"begin": 1145,
"end": 1359,
"name": "POP",
"source": 1
},
{
"begin": 1145,
"end": 1359,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1365,
"end": 1464,
"name": "tag",
"source": 1,
"value": "32"
},
{
"begin": 1365,
"end": 1464,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1417,
"end": 1423,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1451,
"end": 1456,
"name": "DUP2",
"source": 1
},
{
"begin": 1445,
"end": 1457,
"name": "MLOAD",
"source": 1
},
{
"begin": 1435,
"end": 1457,
"name": "SWAP1",
"source": 1
},
{
"begin": 1435,
"end": 1457,
"name": "POP",
"source": 1
},
{
"begin": 1365,
"end": 1464,
"name": "SWAP2",
"source": 1
},
{
"begin": 1365,
"end": 1464,
"name": "SWAP1",
"source": 1
},
{
"begin": 1365,
"end": 1464,
"name": "POP",
"source": 1
},
{
"begin": 1365,
"end": 1464,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1470,
"end": 1639,
"name": "tag",
"source": 1,
"value": "34"
},
{
"begin": 1470,
"end": 1639,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1554,
"end": 1565,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1588,
"end": 1594,
"name": "DUP3",
"source": 1
},
{
"begin": 1583,
"end": 1586,
"name": "DUP3",
"source": 1
},
{
"begin": 1576,
"end": 1595,
"name": "MSTORE",
"source": 1
},
{
"begin": 1628,
"end": 1632,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1623,
"end": 1626,
"name": "DUP3",
"source": 1
},
{
"begin": 1619,
"end": 1633,
"name": "ADD",
"source": 1
},
{
"begin": 1604,
"end": 1633,
"name": "SWAP1",
"source": 1
},
{
"begin": 1604,
"end": 1633,
"name": "POP",
"source": 1
},
{
"begin": 1470,
"end": 1639,
"name": "SWAP3",
"source": 1
},
{
"begin": 1470,
"end": 1639,
"name": "SWAP2",
"source": 1
},
{
"begin": 1470,
"end": 1639,
"name": "POP",
"source": 1
},
{
"begin": 1470,
"end": 1639,
"name": "POP",
"source": 1
},
{
"begin": 1470,
"end": 1639,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1645,
"end": 1735,
"name": "tag",
"source": 1,
"value": "28"
},
{
"begin": 1645,
"end": 1735,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1679,
"end": 1686,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1722,
"end": 1727,
"name": "DUP2",
"source": 1
},
{
"begin": 1715,
"end": 1728,
"name": "ISZERO",
"source": 1
},
{
"begin": 1708,
"end": 1729,
"name": "ISZERO",
"source": 1
},
{
"begin": 1697,
"end": 1729,
"name": "SWAP1",
"source": 1
},
{
"begin": 1697,
"end": 1729,
"name": "POP",
"source": 1
},
{
"begin": 1645,
"end": 1735,
"name": "SWAP2",
"source": 1
},
{
"begin": 1645,
"end": 1735,
"name": "SWAP1",
"source": 1
},
{
"begin": 1645,
"end": 1735,
"name": "POP",
"source": 1
},
{
"begin": 1645,
"end": 1735,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1741,
"end": 1827,
"name": "tag",
"source": 1,
"value": "42"
},
{
"begin": 1741,
"end": 1827,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1776,
"end": 1783,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1816,
"end": 1820,
"name": "PUSH",
"source": 1,
"value": "FF"
},
{
"begin": 1809,
"end": 1814,
"name": "DUP3",
"source": 1
},
{
"begin": 1805,
"end": 1821,
"name": "AND",
"source": 1
},
{
"begin": 1794,
"end": 1821,
"name": "SWAP1",
"source": 1
},
{
"begin": 1794,
"end": 1821,
"name": "POP",
"source": 1
},
{
"begin": 1741,
"end": 1827,
"name": "SWAP2",
"source": 1
},
{
"begin": 1741,
"end": 1827,
"name": "SWAP1",
"source": 1
},
{
"begin": 1741,
"end": 1827,
"name": "POP",
"source": 1
},
{
"begin": 1741,
"end": 1827,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1833,
"end": 2140,
"name": "tag",
"source": 1,
"value": "36"
},
{
"begin": 1833,
"end": 2140,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1901,
"end": 1902,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1911,
"end": 2024,
"name": "tag",
"source": 1,
"value": "54"
},
{
"begin": 1911,
"end": 2024,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1925,
"end": 1931,
"name": "DUP4",
"source": 1
},
{
"begin": 1922,
"end": 1923,
"name": "DUP2",
"source": 1
},
{
"begin": 1919,
"end": 1932,
"name": "LT",
"source": 1
},
{
"begin": 1911,
"end": 2024,
"name": "ISZERO",
"source": 1
},
{
"begin": 1911,
"end": 2024,
"name": "PUSH [tag]",
"source": 1,
"value": "56"
},
{
"begin": 1911,
"end": 2024,
"name": "JUMPI",
"source": 1
},
{
"begin": 2010,
"end": 2011,
"name": "DUP1",
"source": 1
},
{
"begin": 2005,
"end": 2008,
"name": "DUP3",
"source": 1
},
{
"begin": 2001,
"end": 2012,
"name": "ADD",
"source": 1
},
{
"begin": 1995,
"end": 2013,
"name": "MLOAD",
"source": 1
},
{
"begin": 1991,
"end": 1992,
"name": "DUP2",
"source": 1
},
{
"begin": 1986,
"end": 1989,
"name": "DUP5",
"source": 1
},
{
"begin": 1982,
"end": 1993,
"name": "ADD",
"source": 1
},
{
"begin": 1975,
"end": 2014,
"name": "MSTORE",
"source": 1
},
{
"begin": 1947,
"end": 1949,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1944,
"end": 1945,
"name": "DUP2",
"source": 1
},
{
"begin": 1940,
"end": 1950,
"name": "ADD",
"source": 1
},
{
"begin": 1935,
"end": 1950,
"name": "SWAP1",
"source": 1
},
{
"begin": 1935,
"end": 1950,
"name": "POP",
"source": 1
},
{
"begin": 1911,
"end": 2024,
"name": "PUSH [tag]",
"source": 1,
"value": "54"
},
{
"begin": 1911,
"end": 2024,
"name": "JUMP",
"source": 1
},
{
"begin": 1911,
"end": 2024,
"name": "tag",
"source": 1,
"value": "56"
},
{
"begin": 1911,
"end": 2024,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2042,
"end": 2048,
"name": "DUP4",
"source": 1
},
{
"begin": 2039,
"end": 2040,
"name": "DUP2",
"source": 1
},
{
"begin": 2036,
"end": 2049,
"name": "GT",
"source": 1
},
{
"begin": 2033,
"end": 2134,
"name": "ISZERO",
"source": 1
},
{
"begin": 2033,
"end": 2134,
"name": "PUSH [tag]",
"source": 1,
"value": "57"
},
{
"begin": 2033,
"end": 2134,
"name": "JUMPI",
"source": 1
},
{
"begin": 2122,
"end": 2123,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2113,
"end": 2119,
"name": "DUP5",
"source": 1
},
{
"begin": 2108,
"end": 2111,
"name": "DUP5",
"source": 1
},
{
"begin": 2104,
"end": 2120,
"name": "ADD",
"source": 1
},
{
"begin": 2097,
"end": 2124,
"name": "MSTORE",
"source": 1
},
{
"begin": 2033,
"end": 2134,
"name": "tag",
"source": 1,
"value": "57"
},
{
"begin": 2033,
"end": 2134,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1882,
"end": 2140,
"name": "POP",
"source": 1
},
{
"begin": 1833,
"end": 2140,
"name": "POP",
"source": 1
},
{
"begin": 1833,
"end": 2140,
"name": "POP",
"source": 1
},
{
"begin": 1833,
"end": 2140,
"name": "POP",
"source": 1
},
{
"begin": 1833,
"end": 2140,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2146,
"end": 2466,
"name": "tag",
"source": 1,
"value": "19"
},
{
"begin": 2146,
"end": 2466,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2190,
"end": 2196,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2227,
"end": 2228,
"name": "PUSH",
"source": 1,
"value": "2"
},
{
"begin": 2221,
"end": 2225,
"name": "DUP3",
"source": 1
},
{
"begin": 2217,
"end": 2229,
"name": "DIV",
"source": 1
},
{
"begin": 2207,
"end": 2229,
"name": "SWAP1",
"source": 1
},
{
"begin": 2207,
"end": 2229,
"name": "POP",
"source": 1
},
{
"begin": 2274,
"end": 2275,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 2268,
"end": 2272,
"name": "DUP3",
"source": 1
},
{
"begin": 2264,
"end": 2276,
"name": "AND",
"source": 1
},
{
"begin": 2295,
"end": 2313,
"name": "DUP1",
"source": 1
},
{
"begin": 2285,
"end": 2366,
"name": "PUSH [tag]",
"source": 1,
"value": "59"
},
{
"begin": 2285,
"end": 2366,
"name": "JUMPI",
"source": 1
},
{
"begin": 2351,
"end": 2355,
"name": "PUSH",
"source": 1,
"value": "7F"
},
{
"begin": 2343,
"end": 2349,
"name": "DUP3",
"source": 1
},
{
"begin": 2339,
"end": 2356,
"name": "AND",
"source": 1
},
{
"begin": 2329,
"end": 2356,
"name": "SWAP2",
"source": 1
},
{
"begin": 2329,
"end": 2356,
"name": "POP",
"source": 1
},
{
"begin": 2285,
"end": 2366,
"name": "tag",
"source": 1,
"value": "59"
},
{
"begin": 2285,
"end": 2366,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2413,
"end": 2415,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 2405,
"end": 2411,
"name": "DUP3",
"source": 1
},
{
"begin": 2402,
"end": 2416,
"name": "LT",
"source": 1
},
{
"begin": 2382,
"end": 2400,
"name": "DUP2",
"source": 1
},
{
"begin": 2379,
"end": 2417,
"name": "EQ",
"source": 1
},
{
"begin": 2376,
"end": 2460,
"name": "ISZERO",
"source": 1
},
{
"begin": 2376,
"end": 2460,
"name": "PUSH [tag]",
"source": 1,
"value": "60"
},
{
"begin": 2376,
"end": 2460,
"name": "JUMPI",
"source": 1
},
{
"begin": 2432,
"end": 2450,
"name": "PUSH [tag]",
"source": 1,
"value": "61"
},
{
"begin": 2432,
"end": 2450,
"name": "PUSH [tag]",
"source": 1,
"value": "62"
},
{
"begin": 2432,
"end": 2450,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2432,
"end": 2450,
"name": "tag",
"source": 1,
"value": "61"
},
{
"begin": 2432,
"end": 2450,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2376,
"end": 2460,
"name": "tag",
"source": 1,
"value": "60"
},
{
"begin": 2376,
"end": 2460,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2197,
"end": 2466,
"name": "POP",
"source": 1
},
{
"begin": 2146,
"end": 2466,
"name": "SWAP2",
"source": 1
},
{
"begin": 2146,
"end": 2466,
"name": "SWAP1",
"source": 1
},
{
"begin": 2146,
"end": 2466,
"name": "POP",
"source": 1
},
{
"begin": 2146,
"end": 2466,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2472,
"end": 2652,
"name": "tag",
"source": 1,
"value": "62"
},
{
"begin": 2472,
"end": 2652,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2520,
"end": 2597,
"name": "PUSH",
"source": 1,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 2517,
"end": 2518,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2510,
"end": 2598,
"name": "MSTORE",
"source": 1
},
{
"begin": 2617,
"end": 2621,
"name": "PUSH",
"source": 1,
"value": "22"
},
{
"begin": 2614,
"end": 2615,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 2607,
"end": 2622,
"name": "MSTORE",
"source": 1
},
{
"begin": 2641,
"end": 2645,
"name": "PUSH",
"source": 1,
"value": "24"
},
{
"begin": 2638,
"end": 2639,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2631,
"end": 2646,
"name": "REVERT",
"source": 1
},
{
"begin": 2658,
"end": 2760,
"name": "tag",
"source": 1,
"value": "38"
},
{
"begin": 2658,
"end": 2760,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2699,
"end": 2705,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2750,
"end": 2752,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 2746,
"end": 2753,
"name": "NOT",
"source": 1
},
{
"begin": 2741,
"end": 2743,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 2734,
"end": 2739,
"name": "DUP4",
"source": 1
},
{
"begin": 2730,
"end": 2744,
"name": "ADD",
"source": 1
},
{
"begin": 2726,
"end": 2754,
"name": "AND",
"source": 1
},
{
"begin": 2716,
"end": 2754,
"name": "SWAP1",
"source": 1
},
{
"begin": 2716,
"end": 2754,
"name": "POP",
"source": 1
},
{
"begin": 2658,
"end": 2760,
"name": "SWAP2",
"source": 1
},
{
"begin": 2658,
"end": 2760,
"name": "SWAP1",
"source": 1
},
{
"begin": 2658,
"end": 2760,
"name": "POP",
"source": 1
},
{
"begin": 2658,
"end": 2760,
"name": "JUMP",
"source": 1,
"value": "[out]"
}
]
}
}
},
"methodIdentifiers": {
"b()": "4df7e3d0",
"bool_true()": "5760fa05",
"str_public()": "b83d07b7"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"b\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"bool_true\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"str_public\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/first_contract.sol\":\"variables_modifiers\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/first_contract.sol\":{\"keccak256\":\"0xeb614011aa5d3c2bb2427e49b4bedcd5e04b82ee2b41d3a9134c8658c27eedd2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://deed1a9f023794eb7c701dddc502f92369da89d8f600f022c9935af7db69cee9\",\"dweb:/ipfs/QmaxHs4MRvp14rASDbjxLzU9uD6AsNoLQWStutYzVypZnT\"]}},\"version\":1}",
"storageLayout": {
"storage": [
{
"astId": 3,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "a",
"offset": 0,
"slot": "0",
"type": "t_uint256"
},
{
"astId": 6,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "b",
"offset": 0,
"slot": "1",
"type": "t_uint8"
},
{
"astId": 8,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "c",
"offset": 0,
"slot": "2",
"type": "t_int256"
},
{
"astId": 12,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "d",
"offset": 0,
"slot": "3",
"type": "t_int8"
},
{
"astId": 15,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "e",
"offset": 0,
"slot": "4",
"type": "t_int256"
},
{
"astId": 17,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "str",
"offset": 0,
"slot": "5",
"type": "t_string_storage"
},
{
"astId": 20,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "str_public",
"offset": 0,
"slot": "6",
"type": "t_string_storage"
},
{
"astId": 23,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "str_private",
"offset": 0,
"slot": "7",
"type": "t_string_storage"
},
{
"astId": 25,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "boolean",
"offset": 0,
"slot": "8",
"type": "t_bool"
},
{
"astId": 28,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "bool_true",
"offset": 1,
"slot": "8",
"type": "t_bool"
},
{
"astId": 31,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "bool_false",
"offset": 2,
"slot": "8",
"type": "t_bool"
}
],
"types": {
"t_bool": {
"encoding": "inplace",
"label": "bool",
"numberOfBytes": "1"
},
"t_int256": {
"encoding": "inplace",
"label": "int256",
"numberOfBytes": "32"
},
"t_int8": {
"encoding": "inplace",
"label": "int8",
"numberOfBytes": "1"
},
"t_string_storage": {
"encoding": "bytes",
"label": "string",
"numberOfBytes": "32"
},
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
},
"t_uint8": {
"encoding": "inplace",
"label": "uint8",
"numberOfBytes": "1"
}
}
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
}
}
},
"sources": {
"contracts/first_contract.sol": {
"ast": {
"absolutePath": "contracts/first_contract.sol",
"exportedSymbols": {
"variables_modifiers": [
32
]
},
"id": 33,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1,
"literals": [
"solidity",
"^",
"0.8",
".4"
],
"nodeType": "PragmaDirective",
"src": "33:23:0"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"fullyImplemented": true,
"id": 32,
"linearizedBaseContracts": [
32
],
"name": "variables_modifiers",
"nameLocation": "69:19:0",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 3,
"mutability": "mutable",
"name": "a",
"nameLocation": "190:1:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "182:9:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "182:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"functionSelector": "4df7e3d0",
"id": 6,
"mutability": "mutable",
"name": "b",
"nameLocation": "211:1:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "198:18:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
},
"typeName": {
"id": 4,
"name": "uint8",
"nodeType": "ElementaryTypeName",
"src": "198:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
}
},
"value": {
"hexValue": "33",
"id": 5,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "215:1:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_3_by_1",
"typeString": "int_const 3"
},
"value": "3"
},
"visibility": "public"
},
{
"constant": false,
"id": 8,
"mutability": "mutable",
"name": "c",
"nameLocation": "258:1:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "251:8:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 7,
"name": "int256",
"nodeType": "ElementaryTypeName",
"src": "251:6:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 12,
"mutability": "mutable",
"name": "d",
"nameLocation": "271:1:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "266:12:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int8",
"typeString": "int8"
},
"typeName": {
"id": 9,
"name": "int8",
"nodeType": "ElementaryTypeName",
"src": "266:4:0",
"typeDescriptions": {
"typeIdentifier": "t_int8",
"typeString": "int8"
}
},
"value": {
"id": 11,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "-",
"prefix": true,
"src": "275:3:0",
"subExpression": {
"hexValue": "3332",
"id": 10,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "276:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_32_by_1",
"typeString": "int_const 32"
},
"value": "32"
},
"typeDescriptions": {
"typeIdentifier": "t_rational_minus_32_by_1",
"typeString": "int_const -32"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 15,
"mutability": "mutable",
"name": "e",
"nameLocation": "289:1:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "285:10:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 13,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "285:3:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"value": {
"hexValue": "3635",
"id": 14,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "293:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_65_by_1",
"typeString": "int_const 65"
},
"value": "65"
},
"visibility": "internal"
},
{
"constant": false,
"id": 17,
"mutability": "mutable",
"name": "str",
"nameLocation": "327:3:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "320:10:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 16,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "320:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"visibility": "internal"
},
{
"constant": false,
"functionSelector": "b83d07b7",
"id": 20,
"mutability": "mutable",
"name": "str_public",
"nameLocation": "351:10:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "337:42:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 18,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "337:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": {
"hexValue": "537472696e67207075626c6963",
"id": 19,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "364:15:0",
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_3ff21ace200c96ee380c4b4d62366dd83e191763e7a96ec5f010b3382ffe46ee",
"typeString": "literal_string \"String public\""
},
"value": "String public"
},
"visibility": "public"
},
{
"constant": false,
"id": 23,
"mutability": "mutable",
"name": "str_private",
"nameLocation": "401:11:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "386:45:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 21,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "386:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": {
"hexValue": "537472696e672050726976617465",
"id": 22,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "415:16:0",
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_c781ff008639eff08bbca5cef189d4b833814f0caf0a6437ccb8fa7f31c9b31b",
"typeString": "literal_string \"String Private\""
},
"value": "String Private"
},
"visibility": "private"
},
{
"constant": false,
"id": 25,
"mutability": "mutable",
"name": "boolean",
"nameLocation": "460:7:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "455:12:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 24,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "455:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"visibility": "internal"
},
{
"constant": false,
"functionSelector": "5760fa05",
"id": 28,
"mutability": "mutable",
"name": "bool_true",
"nameLocation": "486:9:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "474:28:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 26,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "474:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": {
"hexValue": "74727565",
"id": 27,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "498:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"visibility": "public"
},
{
"constant": false,
"id": 31,
"mutability": "mutable",
"name": "bool_false",
"nameLocation": "522:10:0",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "509:31:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 29,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "509:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": {
"hexValue": "66616c7365",
"id": 30,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "535:5:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
"visibility": "private"
}
],
"scope": 33,
"src": "60:486:0",
"usedErrors": []
}
],
"src": "33:513:0"
},
"id": 0
}
}
}
}
{
"id": "787012a3e79305245136f2c66e959d0c",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.7",
"solcLongVersion": "0.8.7+commit.e28d00a7",
"input": {
"language": "Solidity",
"sources": {
"contracts/first_contract.sol": {
"content": "// SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.4;\r\n\r\ncontract variables_modifiers {\r\n\r\n // Value intenger (uint)\r\n // Reserved uint8 a uint256\r\n // Default 256 \r\n uint256 a;\r\n uint8 b = 3;\r\n \r\n}"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/first_contract.sol": {
"variables_modifiers": {
"abi": [],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/first_contract.sol\":60:219 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n /* \"contracts/first_contract.sol\":208:209 3 */\n 0x03\n /* \"contracts/first_contract.sol\":198:209 uint8 b = 3 */\n 0x01\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0xff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":60:219 contract variables_modifiers {\r... */\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/first_contract.sol\":60:219 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n 0x00\n dup1\n revert\n\n auxdata: 0xa264697066735822122000b6c1bf3ef488986a5135ef8ba8a40b583bf80bab85b8ac0304de9903b32d0364736f6c63430008070033\n}\n",
"bytecode": {
"functionDebugData": {},
"generatedSources": [],
"linkReferences": {},
"object": "60806040526003600160006101000a81548160ff021916908360ff160217905550348015602b57600080fd5b50603f8060396000396000f3fe6080604052600080fdfea264697066735822122000b6c1bf3ef488986a5135ef8ba8a40b583bf80bab85b8ac0304de9903b32d0364736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x3 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP CALLVALUE DUP1 ISZERO PUSH1 0x2B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x3F DUP1 PUSH1 0x39 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 STOP 0xB6 0xC1 0xBF RETURNDATACOPY DELEGATECALL DUP9 SWAP9 PUSH11 0x5135EF8BA8A40B583BF80B 0xAB DUP6 0xB8 0xAC SUB DIV 0xDE SWAP10 SUB 0xB3 0x2D SUB PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ",
"sourceMap": "60:159:0:-:0;;;208:1;198:11;;;;;;;;;;;;;;;;;;;;60:159;;;;;;;;;;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {},
"generatedSources": [],
"immutableReferences": {},
"linkReferences": {},
"object": "6080604052600080fdfea264697066735822122000b6c1bf3ef488986a5135ef8ba8a40b583bf80bab85b8ac0304de9903b32d0364736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 STOP 0xB6 0xC1 0xBF RETURNDATACOPY DELEGATECALL DUP9 SWAP9 PUSH11 0x5135EF8BA8A40B583BF80B 0xAB DUP6 0xB8 0xAC SUB DIV 0xDE SWAP10 SUB 0xB3 0x2D SUB PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ",
"sourceMap": "60:159:0:-:0;;;;;"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "12600",
"executionCost": "24333",
"totalCost": "36933"
}
},
"legacyAssembly": {
".code": [
{
"begin": 60,
"end": 219,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 219,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 219,
"name": "MSTORE",
"source": 0
},
{
"begin": 208,
"end": 209,
"name": "PUSH",
"source": 0,
"value": "3"
},
{
"begin": 198,
"end": 209,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 198,
"end": 209,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 198,
"end": 209,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 198,
"end": 209,
"name": "EXP",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "SLOAD",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 209,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "NOT",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "DUP4",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 209,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "OR",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "SSTORE",
"source": 0
},
{
"begin": 198,
"end": 209,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 219,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 219,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "REVERT",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 219,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 219,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 219,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 219,
"name": "CODECOPY",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 219,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a264697066735822122000b6c1bf3ef488986a5135ef8ba8a40b583bf80bab85b8ac0304de9903b32d0364736f6c63430008070033",
".code": [
{
"begin": 60,
"end": 219,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 219,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 219,
"name": "MSTORE",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 219,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 219,
"name": "REVERT",
"source": 0
}
]
}
}
},
"methodIdentifiers": {}
},
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/first_contract.sol\":\"variables_modifiers\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/first_contract.sol\":{\"keccak256\":\"0xec20056ee39719dd8e07eead7e3bf55685cb9c0ceef2f4fd5dece379f099a27e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7093bfd494e374237f96f7c20cf05997f64c4c59a1b8e40788b6c008d5cceb73\",\"dweb:/ipfs/QmSNYcBid4WLzHN6jdykuPZ9GCNSrAkfcyh7v6Vsn4Ek1b\"]}},\"version\":1}",
"storageLayout": {
"storage": [
{
"astId": 3,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "a",
"offset": 0,
"slot": "0",
"type": "t_uint256"
},
{
"astId": 6,
"contract": "contracts/first_contract.sol:variables_modifiers",
"label": "b",
"offset": 0,
"slot": "1",
"type": "t_uint8"
}
],
"types": {
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
},
"t_uint8": {
"encoding": "inplace",
"label": "uint8",
"numberOfBytes": "1"
}
}
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
}
}
},
"sources": {
"contracts/first_contract.sol": {
"ast": {
"absolutePath": "contracts/first_contract.sol",
"exportedSymbols": {
"variables_modifiers": [
7
]
},
"id": 8,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1,
"literals": [
"solidity",
"^",
"0.8",
".4"
],
"nodeType": "PragmaDirective",
"src": "33:23:0"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"fullyImplemented": true,
"id": 7,
"linearizedBaseContracts": [
7
],
"name": "variables_modifiers",
"nameLocation": "69:19:0",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 3,
"mutability": "mutable",
"name": "a",
"nameLocation": "190:1:0",
"nodeType": "VariableDeclaration",
"scope": 7,
"src": "182:9:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "182:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 6,
"mutability": "mutable",
"name": "b",
"nameLocation": "204:1:0",
"nodeType": "VariableDeclaration",
"scope": 7,
"src": "198:11:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
},
"typeName": {
"id": 4,
"name": "uint8",
"nodeType": "ElementaryTypeName",
"src": "198:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
}
},
"value": {
"hexValue": "33",
"id": 5,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "208:1:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_3_by_1",
"typeString": "int_const 3"
},
"value": "3"
},
"visibility": "internal"
}
],
"scope": 8,
"src": "60:159:0",
"usedErrors": []
}
],
"src": "33:186:0"
},
"id": 0
}
}
}
}
This file has been truncated, but you can view the full file.
{
"id": "add97e1019b5202f16004d8f9f12000c",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.7",
"solcLongVersion": "0.8.7+commit.e28d00a7",
"input": {
"language": "Solidity",
"sources": {
"contracts/first_contract.sol": {
"content": "// SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.4;\r\n\r\ncontract variables_modifiers {\r\n\r\n // Value intenger (uint)\r\n // Reserved uint8 a uint256\r\n // Default 256 \r\n uint256 a;\r\n uint8 public b = 3;\r\n\r\n // Value integer sig\r\n int256 c;\r\n int8 d = -32;\r\n int e = 65;\r\n\r\n // String \r\n string str;\r\n string public str_public = \"String public\";\r\n string private str_private = \"String Private\";\r\n\r\n //Boolean\r\n bool boolean;\r\n bool public bool_true = true;\r\n bool private bool_false = false;\r\n\r\n //bytes\r\n bytes32 first_bytes;\r\n bytes4 second_bytes;\r\n bytes1 byte_one;\r\n\r\n // Algoritmo hash\r\n bytes32 public hashing = keccak256(abi.encodePacked(\"Hello word\"));\r\n\r\n // address\r\n address my_address;\r\n address public address_one = 0x5B38Da6a701c568545dCfcB03FcB875f56beddC4;\r\n address public addres_two = msg.sender; //return address auth user\r\n\r\n // enum\r\n enum options {ON,OFF}\r\n options state;\r\n options constant defaultChoise = options.OFF;\r\n\r\n function turnOn() public {\r\n state = options.ON;\r\n }\r\n\r\n function turnOf() public {\r\n state = options.OFF;\r\n }\r\n\r\n function displayState() public view returns (options){\r\n return state;\r\n }\r\n\r\n\r\n}"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/first_contract.sol": {
"variables_modifiers": {
"abi": [
{
"inputs": [],
"name": "addres_two",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "address_one",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "b",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "bool_true",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "displayState",
"outputs": [
{
"internalType": "enum variables_modifiers.options",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "hashing",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "str_public",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "turnOf",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "turnOn",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/first_contract.sol\":60:1274 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n /* \"contracts/first_contract.sol\":215:216 3 */\n 0x03\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n 0x01\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0xff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":275:278 -32 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0\n /* \"contracts/first_contract.sol\":266:278 int8 d = -32 */\n 0x03\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0x00\n signextend\n 0xff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":293:295 65 */\n 0x41\n /* \"contracts/first_contract.sol\":285:295 int e = 65 */\n 0x04\n sstore\n /* \"contracts/first_contract.sol\":337:379 string public str_public = \"String public\" */\n mload(0x40)\n dup1\n 0x40\n add\n 0x40\n mstore\n dup1\n 0x0d\n dup2\n mstore\n 0x20\n add\n 0x537472696e67207075626c696300000000000000000000000000000000000000\n dup2\n mstore\n pop\n 0x06\n swap1\n dup1\n mload\n swap1\n 0x20\n add\n swap1\n tag_1\n swap3\n swap2\n swap1\n tag_2\n jump\t// in\ntag_1:\n pop\n /* \"contracts/first_contract.sol\":386:431 string private str_private = \"String Private\" */\n mload(0x40)\n dup1\n 0x40\n add\n 0x40\n mstore\n dup1\n 0x0e\n dup2\n mstore\n 0x20\n add\n 0x537472696e672050726976617465000000000000000000000000000000000000\n dup2\n mstore\n pop\n 0x07\n swap1\n dup1\n mload\n swap1\n 0x20\n add\n swap1\n tag_3\n swap3\n swap2\n swap1\n tag_2\n jump\t// in\ntag_3:\n pop\n /* \"contracts/first_contract.sol\":498:502 true */\n 0x01\n /* \"contracts/first_contract.sol\":474:502 bool public bool_true = true */\n 0x08\n exp(0x0100, 0x01)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n iszero\n iszero\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":535:540 false */\n 0x00\n /* \"contracts/first_contract.sol\":509:540 bool private bool_false = false */\n 0x08\n exp(0x0100, 0x02)\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n iszero\n iszero\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":696:726 abi.encodePacked(\"Hello word\") */\n add(0x20, mload(0x40))\n tag_4\n swap1\n tag_5\n jump\t// in\ntag_4:\n mload(0x40)\n 0x20\n dup2\n dup4\n sub\n sub\n dup2\n mstore\n swap1\n 0x40\n mstore\n /* \"contracts/first_contract.sol\":686:727 keccak256(abi.encodePacked(\"Hello word\")) */\n dup1\n mload\n swap1\n 0x20\n add\n keccak256\n /* \"contracts/first_contract.sol\":661:727 bytes32 public hashing = keccak256(abi.encodePacked(\"Hello word\")) */\n 0x0b\n sstore\n /* \"contracts/first_contract.sol\":806:848 0x5B38Da6a701c568545dCfcB03FcB875f56beddC4 */\n 0x5b38da6a701c568545dcfcb03fcb875f56beddc4\n /* \"contracts/first_contract.sol\":777:848 address public address_one = 0x5B38Da6a701c568545dCfcB03FcB875f56beddC4 */\n 0x0d\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xffffffffffffffffffffffffffffffffffffffff\n mul\n not\n and\n swap1\n dup4\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":883:893 msg.sender */\n caller\n /* \"contracts/first_contract.sol\":855:893 address public addres_two = msg.sender */\n 0x0e\n exp(0x0100, 0x00)\n dup2\n sload\n dup2\n 0xffffffffffffffffffffffffffffffffffffffff\n mul\n not\n and\n swap1\n dup4\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":60:1274 contract variables_modifiers {\r... */\n callvalue\n dup1\n iszero\n tag_6\n jumpi\n 0x00\n dup1\n revert\ntag_6:\n pop\n jump(tag_7)\ntag_2:\n dup3\n dup1\n sload\n tag_8\n swap1\n tag_9\n jump\t// in\ntag_8:\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n 0x1f\n add\n 0x20\n swap1\n div\n dup2\n add\n swap3\n dup3\n tag_11\n jumpi\n 0x00\n dup6\n sstore\n jump(tag_10)\ntag_11:\n dup3\n 0x1f\n lt\n tag_12\n jumpi\n dup1\n mload\n not(0xff)\n and\n dup4\n dup1\n add\n or\n dup6\n sstore\n jump(tag_10)\ntag_12:\n dup3\n dup1\n add\n 0x01\n add\n dup6\n sstore\n dup3\n iszero\n tag_10\n jumpi\n swap2\n dup3\n add\ntag_13:\n dup3\n dup2\n gt\n iszero\n tag_14\n jumpi\n dup3\n mload\n dup3\n sstore\n swap2\n 0x20\n add\n swap2\n swap1\n 0x01\n add\n swap1\n jump(tag_13)\ntag_14:\ntag_10:\n pop\n swap1\n pop\n tag_15\n swap2\n swap1\n tag_16\n jump\t// in\ntag_15:\n pop\n swap1\n jump\t// out\ntag_16:\ntag_17:\n dup1\n dup3\n gt\n iszero\n tag_18\n jumpi\n 0x00\n dup2\n 0x00\n swap1\n sstore\n pop\n 0x01\n add\n jump(tag_17)\ntag_18:\n pop\n swap1\n jump\t// out\n /* \"#utility.yul\":7:409 */\ntag_20:\n /* \"#utility.yul\":167:170 */\n 0x00\n /* \"#utility.yul\":188:273 */\n tag_22\n /* \"#utility.yul\":270:272 */\n 0x0a\n /* \"#utility.yul\":265:268 */\n dup4\n /* \"#utility.yul\":188:273 */\n tag_23\n jump\t// in\ntag_22:\n /* \"#utility.yul\":181:273 */\n swap2\n pop\n /* \"#utility.yul\":282:375 */\n tag_24\n /* \"#utility.yul\":371:374 */\n dup3\n /* \"#utility.yul\":282:375 */\n tag_25\n jump\t// in\ntag_24:\n /* \"#utility.yul\":400:402 */\n 0x0a\n /* \"#utility.yul\":395:398 */\n dup3\n /* \"#utility.yul\":391:403 */\n add\n /* \"#utility.yul\":384:403 */\n swap1\n pop\n /* \"#utility.yul\":7:409 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":415:796 */\ntag_5:\n /* \"#utility.yul\":600:603 */\n 0x00\n /* \"#utility.yul\":622:770 */\n tag_27\n /* \"#utility.yul\":766:769 */\n dup3\n /* \"#utility.yul\":622:770 */\n tag_20\n jump\t// in\ntag_27:\n /* \"#utility.yul\":615:770 */\n swap2\n pop\n /* \"#utility.yul\":787:790 */\n dup2\n /* \"#utility.yul\":780:790 */\n swap1\n pop\n /* \"#utility.yul\":415:796 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":802:950 */\ntag_23:\n /* \"#utility.yul\":904:915 */\n 0x00\n /* \"#utility.yul\":941:944 */\n dup2\n /* \"#utility.yul\":926:944 */\n swap1\n pop\n /* \"#utility.yul\":802:950 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":956:1276 */\ntag_9:\n /* \"#utility.yul\":1000:1006 */\n 0x00\n /* \"#utility.yul\":1037:1038 */\n 0x02\n /* \"#utility.yul\":1031:1035 */\n dup3\n /* \"#utility.yul\":1027:1039 */\n div\n /* \"#utility.yul\":1017:1039 */\n swap1\n pop\n /* \"#utility.yul\":1084:1085 */\n 0x01\n /* \"#utility.yul\":1078:1082 */\n dup3\n /* \"#utility.yul\":1074:1086 */\n and\n /* \"#utility.yul\":1105:1123 */\n dup1\n /* \"#utility.yul\":1095:1176 */\n tag_30\n jumpi\n /* \"#utility.yul\":1161:1165 */\n 0x7f\n /* \"#utility.yul\":1153:1159 */\n dup3\n /* \"#utility.yul\":1149:1166 */\n and\n /* \"#utility.yul\":1139:1166 */\n swap2\n pop\n /* \"#utility.yul\":1095:1176 */\ntag_30:\n /* \"#utility.yul\":1223:1225 */\n 0x20\n /* \"#utility.yul\":1215:1221 */\n dup3\n /* \"#utility.yul\":1212:1226 */\n lt\n /* \"#utility.yul\":1192:1210 */\n dup2\n /* \"#utility.yul\":1189:1227 */\n eq\n /* \"#utility.yul\":1186:1270 */\n iszero\n tag_31\n jumpi\n /* \"#utility.yul\":1242:1260 */\n tag_32\n tag_33\n jump\t// in\ntag_32:\n /* \"#utility.yul\":1186:1270 */\ntag_31:\n /* \"#utility.yul\":1007:1276 */\n pop\n /* \"#utility.yul\":956:1276 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1282:1462 */\ntag_33:\n /* \"#utility.yul\":1330:1407 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":1327:1328 */\n 0x00\n /* \"#utility.yul\":1320:1408 */\n mstore\n /* \"#utility.yul\":1427:1431 */\n 0x22\n /* \"#utility.yul\":1424:1425 */\n 0x04\n /* \"#utility.yul\":1417:1432 */\n mstore\n /* \"#utility.yul\":1451:1455 */\n 0x24\n /* \"#utility.yul\":1448:1449 */\n 0x00\n /* \"#utility.yul\":1441:1456 */\n revert\n /* \"#utility.yul\":1468:1628 */\ntag_25:\n /* \"#utility.yul\":1608:1620 */\n 0x48656c6c6f20776f726400000000000000000000000000000000000000000000\n /* \"#utility.yul\":1604:1605 */\n 0x00\n /* \"#utility.yul\":1596:1602 */\n dup3\n /* \"#utility.yul\":1592:1606 */\n add\n /* \"#utility.yul\":1585:1621 */\n mstore\n /* \"#utility.yul\":1468:1628 */\n pop\n jump\t// out\n /* \"contracts/first_contract.sol\":60:1274 contract variables_modifiers {\r... */\ntag_7:\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/first_contract.sol\":60:1274 contract variables_modifiers {\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0xb654b765\n gt\n tag_12\n jumpi\n dup1\n 0xb654b765\n eq\n tag_7\n jumpi\n dup1\n 0xb83d07b7\n eq\n tag_8\n jumpi\n dup1\n 0xba33ed7d\n eq\n tag_9\n jumpi\n dup1\n 0xcd97d84e\n eq\n tag_10\n jumpi\n dup1\n 0xe2bed7b4\n eq\n tag_11\n jumpi\n jump(tag_2)\n tag_12:\n dup1\n 0x4df7e3d0\n eq\n tag_3\n jumpi\n dup1\n 0x5760fa05\n eq\n tag_4\n jumpi\n dup1\n 0x5f7d462e\n eq\n tag_5\n jumpi\n dup1\n 0x7272eea1\n eq\n tag_6\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n tag_3:\n tag_13\n tag_14\n jump\t// in\n tag_13:\n mload(0x40)\n tag_15\n swap2\n swap1\n tag_16\n jump\t// in\n tag_15:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":474:502 bool public bool_true = true */\n tag_4:\n tag_17\n tag_18\n jump\t// in\n tag_17:\n mload(0x40)\n tag_19\n swap2\n swap1\n tag_20\n jump\t// in\n tag_19:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":855:893 address public addres_two = msg.sender */\n tag_5:\n tag_21\n tag_22\n jump\t// in\n tag_21:\n mload(0x40)\n tag_23\n swap2\n swap1\n tag_24\n jump\t// in\n tag_23:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":1183:1267 function displayState() public view returns (options){\r... */\n tag_6:\n tag_25\n tag_26\n jump\t// in\n tag_25:\n mload(0x40)\n tag_27\n swap2\n swap1\n tag_28\n jump\t// in\n tag_27:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":1112:1175 function turnOf() public {\r... */\n tag_7:\n tag_29\n tag_30\n jump\t// in\n tag_29:\n stop\n /* \"contracts/first_contract.sol\":337:379 string public str_public = \"String public\" */\n tag_8:\n tag_31\n tag_32\n jump\t// in\n tag_31:\n mload(0x40)\n tag_33\n swap2\n swap1\n tag_34\n jump\t// in\n tag_33:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":1042:1104 function turnOn() public {\r... */\n tag_9:\n tag_35\n tag_36\n jump\t// in\n tag_35:\n stop\n /* \"contracts/first_contract.sol\":661:727 bytes32 public hashing = keccak256(abi.encodePacked(\"Hello word\")) */\n tag_10:\n tag_37\n tag_38\n jump\t// in\n tag_37:\n mload(0x40)\n tag_39\n swap2\n swap1\n tag_40\n jump\t// in\n tag_39:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":777:848 address public address_one = 0x5B38Da6a701c568545dCfcB03FcB875f56beddC4 */\n tag_11:\n tag_41\n tag_42\n jump\t// in\n tag_41:\n mload(0x40)\n tag_43\n swap2\n swap1\n tag_24\n jump\t// in\n tag_43:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/first_contract.sol\":198:216 uint8 public b = 3 */\n tag_14:\n 0x01\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":474:502 bool public bool_true = true */\n tag_18:\n 0x08\n 0x01\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xff\n and\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":855:893 address public addres_two = msg.sender */\n tag_22:\n 0x0e\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":1183:1267 function displayState() public view returns (options){\r... */\n tag_26:\n /* \"contracts/first_contract.sol\":1228:1235 options */\n 0x00\n /* \"contracts/first_contract.sol\":1254:1259 state */\n 0x0e\n 0x14\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xff\n and\n /* \"contracts/first_contract.sol\":1247:1259 return state */\n swap1\n pop\n /* \"contracts/first_contract.sol\":1183:1267 function displayState() public view returns (options){\r... */\n swap1\n jump\t// out\n /* \"contracts/first_contract.sol\":1112:1175 function turnOf() public {\r... */\n tag_30:\n /* \"contracts/first_contract.sol\":1156:1167 options.OFF */\n 0x01\n /* \"contracts/first_contract.sol\":1148:1153 state */\n 0x0e\n 0x14\n /* \"contracts/first_contract.sol\":1148:1167 state = options.OFF */\n 0x0100\n exp\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0x01\n dup2\n gt\n iszero\n tag_46\n jumpi\n tag_47\n tag_48\n jump\t// in\n tag_47:\n tag_46:\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":1112:1175 function turnOf() public {\r... */\n jump\t// out\n /* \"contracts/first_contract.sol\":337:379 string public str_public = \"String public\" */\n tag_32:\n 0x06\n dup1\n sload\n tag_49\n swap1\n tag_50\n jump\t// in\n tag_49:\n dup1\n 0x1f\n add\n 0x20\n dup1\n swap2\n div\n mul\n 0x20\n add\n mload(0x40)\n swap1\n dup2\n add\n 0x40\n mstore\n dup1\n swap3\n swap2\n swap1\n dup2\n dup2\n mstore\n 0x20\n add\n dup3\n dup1\n sload\n tag_51\n swap1\n tag_50\n jump\t// in\n tag_51:\n dup1\n iszero\n tag_52\n jumpi\n dup1\n 0x1f\n lt\n tag_53\n jumpi\n 0x0100\n dup1\n dup4\n sload\n div\n mul\n dup4\n mstore\n swap2\n 0x20\n add\n swap2\n jump(tag_52)\n tag_53:\n dup3\n add\n swap2\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n tag_54:\n dup2\n sload\n dup2\n mstore\n swap1\n 0x01\n add\n swap1\n 0x20\n add\n dup1\n dup4\n gt\n tag_54\n jumpi\n dup3\n swap1\n sub\n 0x1f\n and\n dup3\n add\n swap2\n tag_52:\n pop\n pop\n pop\n pop\n pop\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":1042:1104 function turnOn() public {\r... */\n tag_36:\n /* \"contracts/first_contract.sol\":1086:1096 options.ON */\n 0x00\n /* \"contracts/first_contract.sol\":1078:1083 state */\n 0x0e\n 0x14\n /* \"contracts/first_contract.sol\":1078:1096 state = options.ON */\n 0x0100\n exp\n dup2\n sload\n dup2\n 0xff\n mul\n not\n and\n swap1\n dup4\n 0x01\n dup2\n gt\n iszero\n tag_56\n jumpi\n tag_57\n tag_48\n jump\t// in\n tag_57:\n tag_56:\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/first_contract.sol\":1042:1104 function turnOn() public {\r... */\n jump\t// out\n /* \"contracts/first_contract.sol\":661:727 bytes32 public hashing = keccak256(abi.encodePacked(\"Hello word\")) */\n tag_38:\n sload(0x0b)\n dup2\n jump\t// out\n /* \"contracts/first_contract.sol\":777:848 address public address_one = 0x5B38Da6a701c568545dCfcB03FcB875f56beddC4 */\n tag_42:\n 0x0d\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n dup2\n jump\t// out\n /* \"#utility.yul\":7:125 */\n tag_59:\n /* \"#utility.yul\":94:118 */\n tag_61\n /* \"#utility.yul\":112:117 */\n dup2\n /* \"#utility.yul\":94:118 */\n tag_62\n jump\t// in\n tag_61:\n /* \"#utility.yul\":89:92 */\n dup3\n /* \"#utility.yul\":82:119 */\n mstore\n /* \"#utility.yul\":7:125 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":131:240 */\n tag_63:\n /* \"#utility.yul\":212:233 */\n tag_65\n /* \"#utility.yul\":227:232 */\n dup2\n /* \"#utility.yul\":212:233 */\n tag_66\n jump\t// in\n tag_65:\n /* \"#utility.yul\":207:210 */\n dup3\n /* \"#utility.yul\":200:234 */\n mstore\n /* \"#utility.yul\":131:240 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":246:364 */\n tag_67:\n /* \"#utility.yul\":333:357 */\n tag_69\n /* \"#utility.yul\":351:356 */\n dup2\n /* \"#utility.yul\":333:357 */\n tag_70\n jump\t// in\n tag_69:\n /* \"#utility.yul\":328:331 */\n dup3\n /* \"#utility.yul\":321:358 */\n mstore\n /* \"#utility.yul\":246:364 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":370:517 */\n tag_71:\n /* \"#utility.yul\":465:510 */\n tag_73\n /* \"#utility.yul\":504:509 */\n dup2\n /* \"#utility.yul\":465:510 */\n tag_74\n jump\t// in\n tag_73:\n /* \"#utility.yul\":460:463 */\n dup3\n /* \"#utility.yul\":453:511 */\n mstore\n /* \"#utility.yul\":370:517 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":523:887 */\n tag_75:\n /* \"#utility.yul\":611:614 */\n 0x00\n /* \"#utility.yul\":639:678 */\n tag_77\n /* \"#utility.yul\":672:677 */\n dup3\n /* \"#utility.yul\":639:678 */\n tag_78\n jump\t// in\n tag_77:\n /* \"#utility.yul\":694:765 */\n tag_79\n /* \"#utility.yul\":758:764 */\n dup2\n /* \"#utility.yul\":753:756 */\n dup6\n /* \"#utility.yul\":694:765 */\n tag_80\n jump\t// in\n tag_79:\n /* \"#utility.yul\":687:765 */\n swap4\n pop\n /* \"#utility.yul\":774:826 */\n tag_81\n /* \"#utility.yul\":819:825 */\n dup2\n /* \"#utility.yul\":814:817 */\n dup6\n /* \"#utility.yul\":807:811 */\n 0x20\n /* \"#utility.yul\":800:805 */\n dup7\n /* \"#utility.yul\":796:812 */\n add\n /* \"#utility.yul\":774:826 */\n tag_82\n jump\t// in\n tag_81:\n /* \"#utility.yul\":851:880 */\n tag_83\n /* \"#utility.yul\":873:879 */\n dup2\n /* \"#utility.yul\":851:880 */\n tag_84\n jump\t// in\n tag_83:\n /* \"#utility.yul\":846:849 */\n dup5\n /* \"#utility.yul\":842:881 */\n add\n /* \"#utility.yul\":835:881 */\n swap2\n pop\n /* \"#utility.yul\":615:887 */\n pop\n /* \"#utility.yul\":523:887 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":893:1005 */\n tag_85:\n /* \"#utility.yul\":976:998 */\n tag_87\n /* \"#utility.yul\":992:997 */\n dup2\n /* \"#utility.yul\":976:998 */\n tag_88\n jump\t// in\n tag_87:\n /* \"#utility.yul\":971:974 */\n dup3\n /* \"#utility.yul\":964:999 */\n mstore\n /* \"#utility.yul\":893:1005 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1011:1233 */\n tag_24:\n /* \"#utility.yul\":1104:1108 */\n 0x00\n /* \"#utility.yul\":1142:1144 */\n 0x20\n /* \"#utility.yul\":1131:1140 */\n dup3\n /* \"#utility.yul\":1127:1145 */\n add\n /* \"#utility.yul\":1119:1145 */\n swap1\n pop\n /* \"#utility.yul\":1155:1226 */\n tag_90\n /* \"#utility.yul\":1223:1224 */\n 0x00\n /* \"#utility.yul\":1212:1221 */\n dup4\n /* \"#utility.yul\":1208:1225 */\n add\n /* \"#utility.yul\":1199:1205 */\n dup5\n /* \"#utility.yul\":1155:1226 */\n tag_59\n jump\t// in\n tag_90:\n /* \"#utility.yul\":1011:1233 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1239:1449 */\n tag_20:\n /* \"#utility.yul\":1326:1330 */\n 0x00\n /* \"#utility.yul\":1364:1366 */\n 0x20\n /* \"#utility.yul\":1353:1362 */\n dup3\n /* \"#utility.yul\":1349:1367 */\n add\n /* \"#utility.yul\":1341:1367 */\n swap1\n pop\n /* \"#utility.yul\":1377:1442 */\n tag_92\n /* \"#utility.yul\":1439:1440 */\n 0x00\n /* \"#utility.yul\":1428:1437 */\n dup4\n /* \"#utility.yul\":1424:1441 */\n add\n /* \"#utility.yul\":1415:1421 */\n dup5\n /* \"#utility.yul\":1377:1442 */\n tag_63\n jump\t// in\n tag_92:\n /* \"#utility.yul\":1239:1449 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1455:1677 */\n tag_40:\n /* \"#utility.yul\":1548:1552 */\n 0x00\n /* \"#utility.yul\":1586:1588 */\n 0x20\n /* \"#utility.yul\":1575:1584 */\n dup3\n /* \"#utility.yul\":1571:1589 */\n add\n /* \"#utility.yul\":1563:1589 */\n swap1\n pop\n /* \"#utility.yul\":1599:1670 */\n tag_94\n /* \"#utility.yul\":1667:1668 */\n 0x00\n /* \"#utility.yul\":1656:1665 */\n dup4\n /* \"#utility.yul\":1652:1669 */\n add\n /* \"#utility.yul\":1643:1649 */\n dup5\n /* \"#utility.yul\":1599:1670 */\n tag_67\n jump\t// in\n tag_94:\n /* \"#utility.yul\":1455:1677 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1683:1921 */\n tag_28:\n /* \"#utility.yul\":1784:1788 */\n 0x00\n /* \"#utility.yul\":1822:1824 */\n 0x20\n /* \"#utility.yul\":1811:1820 */\n dup3\n /* \"#utility.yul\":1807:1825 */\n add\n /* \"#utility.yul\":1799:1825 */\n swap1\n pop\n /* \"#utility.yul\":1835:1914 */\n tag_96\n /* \"#utility.yul\":1911:1912 */\n 0x00\n /* \"#utility.yul\":1900:1909 */\n dup4\n /* \"#utility.yul\":1896:1913 */\n add\n /* \"#utility.yul\":1887:1893 */\n dup5\n /* \"#utility.yul\":1835:1914 */\n tag_71\n jump\t// in\n tag_96:\n /* \"#utility.yul\":1683:1921 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1927:2240 */\n tag_34:\n /* \"#utility.yul\":2040:2044 */\n 0x00\n /* \"#utility.yul\":2078:2080 */\n 0x20\n /* \"#utility.yul\":2067:2076 */\n dup3\n /* \"#utility.yul\":2063:2081 */\n add\n /* \"#utility.yul\":2055:2081 */\n swap1\n pop\n /* \"#utility.yul\":2127:2136 */\n dup2\n /* \"#utility.yul\":2121:2125 */\n dup2\n /* \"#utility.yul\":2117:2137 */\n sub\n /* \"#utility.yul\":2113:2114 */\n 0x00\n /* \"#utility.yul\":2102:2111 */\n dup4\n /* \"#utility.yul\":2098:2115 */\n add\n /* \"#utility.yul\":2091:2138 */\n mstore\n /* \"#utility.yul\":2155:2233 */\n tag_98\n /* \"#utility.yul\":2228:2232 */\n dup2\n /* \"#utility.yul\":2219:2225 */\n dup5\n /* \"#utility.yul\":2155:2233 */\n tag_75\n jump\t// in\n tag_98:\n /* \"#utility.yul\":2147:2233 */\n swap1\n pop\n /* \"#utility.yul\":1927:2240 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2246:2460 */\n tag_16:\n /* \"#utility.yul\":2335:2339 */\n 0x00\n /* \"#utility.yul\":2373:2375 */\n 0x20\n /* \"#utility.yul\":2362:2371 */\n dup3\n /* \"#utility.yul\":2358:2376 */\n add\n /* \"#utility.yul\":2350:2376 */\n swap1\n pop\n /* \"#utility.yul\":2386:2453 */\n tag_100\n /* \"#utility.yul\":2450:2451 */\n 0x00\n /* \"#utility.yul\":2439:2448 */\n dup4\n /* \"#utility.yul\":2435:2452 */\n add\n /* \"#utility.yul\":2426:2432 */\n dup5\n /* \"#utility.yul\":2386:2453 */\n tag_85\n jump\t// in\n tag_100:\n /* \"#utility.yul\":2246:2460 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2466:2565 */\n tag_78:\n /* \"#utility.yul\":2518:2524 */\n 0x00\n /* \"#utility.yul\":2552:2557 */\n dup2\n /* \"#utility.yul\":2546:2558 */\n mload\n /* \"#utility.yul\":2536:2558 */\n swap1\n pop\n /* \"#utility.yul\":2466:2565 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2571:2740 */\n tag_80:\n /* \"#utility.yul\":2655:2666 */\n 0x00\n /* \"#utility.yul\":2689:2695 */\n dup3\n /* \"#utility.yul\":2684:2687 */\n dup3\n /* \"#utility.yul\":2677:2696 */\n mstore\n /* \"#utility.yul\":2729:2733 */\n 0x20\n /* \"#utility.yul\":2724:2727 */\n dup3\n /* \"#utility.yul\":2720:2734 */\n add\n /* \"#utility.yul\":2705:2734 */\n swap1\n pop\n /* \"#utility.yul\":2571:2740 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2746:2842 */\n tag_62:\n /* \"#utility.yul\":2783:2790 */\n 0x00\n /* \"#utility.yul\":2812:2836 */\n tag_104\n /* \"#utility.yul\":2830:2835 */\n dup3\n /* \"#utility.yul\":2812:2836 */\n tag_105\n jump\t// in\n tag_104:\n /* \"#utility.yul\":2801:2836 */\n swap1\n pop\n /* \"#utility.yul\":2746:2842 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2848:2938 */\n tag_66:\n /* \"#utility.yul\":2882:2889 */\n 0x00\n /* \"#utility.yul\":2925:2930 */\n dup2\n /* \"#utility.yul\":2918:2931 */\n iszero\n /* \"#utility.yul\":2911:2932 */\n iszero\n /* \"#utility.yul\":2900:2932 */\n swap1\n pop\n /* \"#utility.yul\":2848:2938 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2944:3021 */\n tag_70:\n /* \"#utility.yul\":2981:2988 */\n 0x00\n /* \"#utility.yul\":3010:3015 */\n dup2\n /* \"#utility.yul\":2999:3015 */\n swap1\n pop\n /* \"#utility.yul\":2944:3021 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3027:3158 */\n tag_108:\n /* \"#utility.yul\":3074:3081 */\n 0x00\n /* \"#utility.yul\":3103:3108 */\n dup2\n /* \"#utility.yul\":3092:3108 */\n swap1\n pop\n /* \"#utility.yul\":3109:3152 */\n tag_110\n /* \"#utility.yul\":3146:3151 */\n dup3\n /* \"#utility.yul\":3109:3152 */\n tag_111\n jump\t// in\n tag_110:\n /* \"#utility.yul\":3027:3158 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3164:3290 */\n tag_105:\n /* \"#utility.yul\":3201:3208 */\n 0x00\n /* \"#utility.yul\":3241:3283 */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":3234:3239 */\n dup3\n /* \"#utility.yul\":3230:3284 */\n and\n /* \"#utility.yul\":3219:3284 */\n swap1\n pop\n /* \"#utility.yul\":3164:3290 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3296:3382 */\n tag_88:\n /* \"#utility.yul\":3331:3338 */\n 0x00\n /* \"#utility.yul\":3371:3375 */\n 0xff\n /* \"#utility.yul\":3364:3369 */\n dup3\n /* \"#utility.yul\":3360:3376 */\n and\n /* \"#utility.yul\":3349:3376 */\n swap1\n pop\n /* \"#utility.yul\":3296:3382 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3388:3519 */\n tag_74:\n /* \"#utility.yul\":3446:3455 */\n 0x00\n /* \"#utility.yul\":3479:3513 */\n tag_115\n /* \"#utility.yul\":3507:3512 */\n dup3\n /* \"#utility.yul\":3479:3513 */\n tag_108\n jump\t// in\n tag_115:\n /* \"#utility.yul\":3466:3513 */\n swap1\n pop\n /* \"#utility.yul\":3388:3519 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3525:3832 */\n tag_82:\n /* \"#utility.yul\":3593:3594 */\n 0x00\n /* \"#utility.yul\":3603:3716 */\n tag_117:\n /* \"#utility.yul\":3617:3623 */\n dup4\n /* \"#utility.yul\":3614:3615 */\n dup2\n /* \"#utility.yul\":3611:3624 */\n lt\n /* \"#utility.yul\":3603:3716 */\n iszero\n tag_119\n jumpi\n /* \"#utility.yul\":3702:3703 */\n dup1\n /* \"#utility.yul\":3697:3700 */\n dup3\n /* \"#utility.yul\":3693:3704 */\n add\n /* \"#utility.yul\":3687:3705 */\n mload\n /* \"#utility.yul\":3683:3684 */\n dup2\n /* \"#utility.yul\":3678:3681 */\n dup5\n /* \"#utility.yul\":3674:3685 */\n add\n /* \"#utility.yul\":3667:3706 */\n mstore\n /* \"#utility.yul\":3639:3641 */\n 0x20\n /* \"#utility.yul\":3636:3637 */\n dup2\n /* \"#utility.yul\":3632:3642 */\n add\n /* \"#utility.yul\":3627:3642 */\n swap1\n pop\n /* \"#utility.yul\":3603:3716 */\n jump(tag_117)\n tag_119:\n /* \"#utility.yul\":3734:3740 */\n dup4\n /* \"#utility.yul\":3731:3732 */\n dup2\n /* \"#utility.yul\":3728:3741 */\n gt\n /* \"#utility.yul\":3725:3826 */\n iszero\n tag_120\n jumpi\n /* \"#utility.yul\":3814:3815 */\n 0x00\n /* \"#utility.yul\":3805:3811 */\n dup5\n /* \"#utility.yul\":3800:3803 */\n dup5\n /* \"#utility.yul\":3796:3812 */\n add\n /* \"#utility.yul\":3789:3816 */\n mstore\n /* \"#utility.yul\":3725:3826 */\n tag_120:\n /* \"#utility.yul\":3574:3832 */\n pop\n /* \"#utility.yul\":3525:3832 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3838:4158 */\n tag_50:\n /* \"#utility.yul\":3882:3888 */\n 0x00\n /* \"#utility.yul\":3919:3920 */\n 0x02\n /* \"#utility.yul\":3913:3917 */\n dup3\n /* \"#utility.yul\":3909:3921 */\n div\n /* \"#utility.yul\":3899:3921 */\n swap1\n pop\n /* \"#utility.yul\":3966:3967 */\n 0x01\n /* \"#utility.yul\":3960:3964 */\n dup3\n /* \"#utility.yul\":3956:3968 */\n and\n /* \"#utility.yul\":3987:4005 */\n dup1\n /* \"#utility.yul\":3977:4058 */\n tag_122\n jumpi\n /* \"#utility.yul\":4043:4047 */\n 0x7f\n /* \"#utility.yul\":4035:4041 */\n dup3\n /* \"#utility.yul\":4031:4048 */\n and\n /* \"#utility.yul\":4021:4048 */\n swap2\n pop\n /* \"#utility.yul\":3977:4058 */\n tag_122:\n /* \"#utility.yul\":4105:4107 */\n 0x20\n /* \"#utility.yul\":4097:4103 */\n dup3\n /* \"#utility.yul\":4094:4108 */\n lt\n /* \"#utility.yul\":4074:4092 */\n dup2\n /* \"#utility.yul\":4071:4109 */\n eq\n /* \"#utility.yul\":4068:4152 */\n iszero\n tag_123\n jumpi\n /* \"#utility.yul\":4124:4142 */\n tag_124\n tag_125\n jump\t// in\n tag_124:\n /* \"#utility.yul\":4068:4152 */\n tag_123:\n /* \"#utility.yul\":3889:4158 */\n pop\n /* \"#utility.yul\":3838:4158 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":4164:4344 */\n tag_48:\n /* \"#utility.yul\":4212:4289 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":4209:4210 */\n 0x00\n /* \"#utility.yul\":4202:4290 */\n mstore\n /* \"#utility.yul\":4309:4313 */\n 0x21\n /* \"#utility.yul\":4306:4307 */\n 0x04\n /* \"#utility.yul\":4299:4314 */\n mstore\n /* \"#utility.yul\":4333:4337 */\n 0x24\n /* \"#utility.yul\":4330:4331 */\n 0x00\n /* \"#utility.yul\":4323:4338 */\n revert\n /* \"#utility.yul\":4350:4530 */\n tag_125:\n /* \"#utility.yul\":4398:4475 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":4395:4396 */\n 0x00\n /* \"#utility.yul\":4388:4476 */\n mstore\n /* \"#utility.yul\":4495:4499 */\n 0x22\n /* \"#utility.yul\":4492:4493 */\n 0x04\n /* \"#utility.yul\":4485:4500 */\n mstore\n /* \"#utility.yul\":4519:4523 */\n 0x24\n /* \"#utility.yul\":4516:4517 */\n 0x00\n /* \"#utility.yul\":4509:4524 */\n revert\n /* \"#utility.yul\":4536:4638 */\n tag_84:\n /* \"#utility.yul\":4577:4583 */\n 0x00\n /* \"#utility.yul\":4628:4630 */\n 0x1f\n /* \"#utility.yul\":4624:4631 */\n not\n /* \"#utility.yul\":4619:4621 */\n 0x1f\n /* \"#utility.yul\":4612:4617 */\n dup4\n /* \"#utility.yul\":4608:4622 */\n add\n /* \"#utility.yul\":4604:4632 */\n and\n /* \"#utility.yul\":4594:4632 */\n swap1\n pop\n /* \"#utility.yul\":4536:4638 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":4644:4759 */\n tag_111:\n /* \"#utility.yul\":4727:4728 */\n 0x02\n /* \"#utility.yul\":4720:4725 */\n dup2\n /* \"#utility.yul\":4717:4729 */\n lt\n /* \"#utility.yul\":4707:4753 */\n tag_130\n jumpi\n /* \"#utility.yul\":4733:4751 */\n tag_131\n tag_48\n jump\t// in\n tag_131:\n /* \"#utility.yul\":4707:4753 */\n tag_130:\n /* \"#utility.yul\":4644:4759 */\n pop\n jump\t// out\n\n auxdata: 0xa26469706673582212201e5ee669bb2eb30410a6c25307c63a867b8b42f344620620ec32985fa4761aa764736f6c63430008070033\n}\n",
"bytecode": {
"functionDebugData": {
"abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack": {
"entryPoint": 676,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_packed_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": {
"entryPoint": 711,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack": {
"entryPoint": 732,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"extract_byte_array_length": {
"entryPoint": 743,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x22": {
"entryPoint": 793,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785": {
"entryPoint": 840,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:1631:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "171:238:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "181:92:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "265:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "270:2:1",
"type": "",
"value": "10"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulIdentifier",
"src": "188:76:1"
},
"nodeType": "YulFunctionCall",
"src": "188:85:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "181:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "371:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785",
"nodeType": "YulIdentifier",
"src": "282:88:1"
},
"nodeType": "YulFunctionCall",
"src": "282:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "282:93:1"
},
{
"nodeType": "YulAssignment",
"src": "384:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "395:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "400:2:1",
"type": "",
"value": "10"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "391:3:1"
},
"nodeType": "YulFunctionCall",
"src": "391:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "384:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "159:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "167:3:1",
"type": ""
}
],
"src": "7:402:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "604:192:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "615:155:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "766:3:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulIdentifier",
"src": "622:142:1"
},
"nodeType": "YulFunctionCall",
"src": "622:148:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "615:3:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "780:10:1",
"value": {
"name": "pos",
"nodeType": "YulIdentifier",
"src": "787:3:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "780:3:1"
}
]
}
]
},
"name": "abi_encode_tuple_packed_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "591:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "600:3:1",
"type": ""
}
],
"src": "415:381:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "916:34:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "926:18:1",
"value": {
"name": "pos",
"nodeType": "YulIdentifier",
"src": "941:3:1"
},
"variableNames": [
{
"name": "updated_pos",
"nodeType": "YulIdentifier",
"src": "926:11:1"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "888:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "893:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nodeType": "YulTypedName",
"src": "904:11:1",
"type": ""
}
],
"src": "802:148:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1007:269:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1017:22:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "1031:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1037:1:1",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "1027:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1027:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1017:6:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "1048:38:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "1078:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1084:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "1074:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1074:12:1"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulTypedName",
"src": "1052:18:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "1125:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1139:27:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1153:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1161:4:1",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "1149:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1149:17:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1139:6:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "1105:18:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "1098:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1098:26:1"
},
"nodeType": "YulIf",
"src": "1095:81:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1228:42:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x22",
"nodeType": "YulIdentifier",
"src": "1242:16:1"
},
"nodeType": "YulFunctionCall",
"src": "1242:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "1242:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "1192:18:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "1215:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1223:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "1212:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1212:14:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "1189:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1189:38:1"
},
"nodeType": "YulIf",
"src": "1186:84:1"
}
]
},
"name": "extract_byte_array_length",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "991:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "1000:6:1",
"type": ""
}
],
"src": "956:320:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1310:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1327:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1330:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1320:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1320:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "1320:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1424:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1427:4:1",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1417:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1417:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1417:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1448:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1451:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1441:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1441:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1441:15:1"
}
]
},
"name": "panic_error_0x22",
"nodeType": "YulFunctionDefinition",
"src": "1282:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1574:54:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "1596:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1604:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1592:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1592:14:1"
},
{
"hexValue": "48656c6c6f20776f7264",
"kind": "string",
"nodeType": "YulLiteral",
"src": "1608:12:1",
"type": "",
"value": "Hello word"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1585:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1585:36:1"
},
"nodeType": "YulExpressionStatement",
"src": "1585:36:1"
}
]
},
"name": "store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "1566:6:1",
"type": ""
}
],
"src": "1468:160:1"
}
]
},
"contents": "{\n\n function abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 10)\n store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785(pos)\n end := add(pos, 10)\n }\n\n function abi_encode_tuple_packed_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos ) -> end {\n\n pos := abi_encode_t_stringliteral_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n end := pos\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function store_literal_in_memory_09f78c58c8199fe5867890d8f9aba3d4aa226c13a8e86509b962c00d35582785(memPtr) {\n\n mstore(add(memPtr, 0), \"Hello word\")\n\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"linkReferences": {},
"object": "60806040526003600160006101000a81548160ff021916908360ff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0600360006101000a81548160ff021916908360000b60ff16021790555060416004556040518060400160405280600d81526020017f537472696e67207075626c696300000000000000000000000000000000000000815250600690805190602001906100ae929190610201565b506040518060400160405280600e81526020017f537472696e672050726976617465000000000000000000000000000000000000815250600790805190602001906100fa929190610201565b506001600860016101000a81548160ff0219169083151502179055506000600860026101000a81548160ff021916908315150217905550604051602001610140906102c7565b60405160208183030381529060405280519060200120600b55735b38da6a701c568545dcfcb03fcb875f56beddc4600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156101fb57600080fd5b50610371565b82805461020d906102e7565b90600052602060002090601f01602090048101928261022f5760008555610276565b82601f1061024857805160ff1916838001178555610276565b82800160010185558215610276579182015b8281111561027557825182559160200191906001019061025a565b5b5090506102839190610287565b5090565b5b808211156102a0576000816000905550600101610288565b5090565b60006102b1600a836102dc565b91506102bc82610348565b600a82019050919050565b60006102d2826102a4565b9150819050919050565b600081905092915050565b600060028204905060018216806102ff57607f821691505b6020821081141561031357610312610319565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f48656c6c6f20776f726400000000000000000000000000000000000000000000600082015250565b6105d6806103806000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063b654b76511610066578063b654b76514610110578063b83d07b71461011a578063ba33ed7d14610138578063cd97d84e14610142578063e2bed7b41461016057610093565b80634df7e3d0146100985780635760fa05146100b65780635f7d462e146100d45780637272eea1146100f2575b600080fd5b6100a061017e565b6040516100ad9190610407565b60405180910390f35b6100be610191565b6040516100cb9190610394565b60405180910390f35b6100dc6101a4565b6040516100e99190610379565b60405180910390f35b6100fa6101ca565b60405161010791906103ca565b60405180910390f35b6101186101e1565b005b61012261020e565b60405161012f91906103e5565b60405180910390f35b61014061029c565b005b61014a6102c9565b60405161015791906103af565b60405180910390f35b6101686102cf565b6040516101759190610379565b60405180910390f35b600160009054906101000a900460ff1681565b600860019054906101000a900460ff1681565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600e60149054906101000a900460ff16905090565b6001600e60146101000a81548160ff021916908360018111156102075761020661051d565b5b0217905550565b6006805461021b906104eb565b80601f0160208091040260200160405190810160405280929190818152602001828054610247906104eb565b80156102945780601f1061026957610100808354040283529160200191610294565b820191906000526020600020905b81548152906001019060200180831161027757829003601f168201915b505050505081565b6000600e60146101000a81548160ff021916908360018111156102c2576102c161051d565b5b0217905550565b600b5481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6102fe8161043e565b82525050565b61030d81610450565b82525050565b61031c8161045c565b82525050565b61032b816104a6565b82525050565b600061033c82610422565b610346818561042d565b93506103568185602086016104b8565b61035f8161057b565b840191505092915050565b61037381610499565b82525050565b600060208201905061038e60008301846102f5565b92915050565b60006020820190506103a96000830184610304565b92915050565b60006020820190506103c46000830184610313565b92915050565b60006020820190506103df6000830184610322565b92915050565b600060208201905081810360008301526103ff8184610331565b905092915050565b600060208201905061041c600083018461036a565b92915050565b600081519050919050565b600082825260208201905092915050565b600061044982610479565b9050919050565b60008115159050919050565b6000819050919050565b60008190506104748261058c565b919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600060ff82169050919050565b60006104b182610466565b9050919050565b60005b838110156104d65780820151818401526020810190506104bb565b838111156104e5576000848401525b50505050565b6000600282049050600182168061050357607f821691505b602082108114156105175761051661054c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b6002811061059d5761059c61051d565b5b5056fea26469706673582212201e5ee669bb2eb30410a6c25307c63a867b8b42f344620620ec32985fa4761aa764736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x3 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 PUSH1 0x3 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0x0 SIGNEXTEND PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x41 PUSH1 0x4 SSTORE PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xD DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x537472696E67207075626C696300000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x6 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xAE SWAP3 SWAP2 SWAP1 PUSH2 0x201 JUMP JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xE DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x537472696E672050726976617465000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x7 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xFA SWAP3 SWAP2 SWAP1 PUSH2 0x201 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x8 PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x8 PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x140 SWAP1 PUSH2 0x2C7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH1 0xB SSTORE PUSH20 0x5B38DA6A701C568545DCFCB03FCB875F56BEDDC4 PUSH1 0xD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP CALLER PUSH1 0xE PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP CALLVALUE DUP1 ISZERO PUSH2 0x1FB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x371 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x20D SWAP1 PUSH2 0x2E7 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x22F JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x276 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x248 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x276 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x276 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x275 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x25A JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x283 SWAP2 SWAP1 PUSH2 0x287 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x2A0 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x288 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B1 PUSH1 0xA DUP4 PUSH2 0x2DC JUMP JUMPDEST SWAP2 POP PUSH2 0x2BC DUP3 PUSH2 0x348 JUMP JUMPDEST PUSH1 0xA DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D2 DUP3 PUSH2 0x2A4 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2FF JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x313 JUMPI PUSH2 0x312 PUSH2 0x319 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x48656C6C6F20776F726400000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x5D6 DUP1 PUSH2 0x380 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x93 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xB654B765 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xB654B765 EQ PUSH2 0x110 JUMPI DUP1 PUSH4 0xB83D07B7 EQ PUSH2 0x11A JUMPI DUP1 PUSH4 0xBA33ED7D EQ PUSH2 0x138 JUMPI DUP1 PUSH4 0xCD97D84E EQ PUSH2 0x142 JUMPI DUP1 PUSH4 0xE2BED7B4 EQ PUSH2 0x160 JUMPI PUSH2 0x93 JUMP JUMPDEST DUP1 PUSH4 0x4DF7E3D0 EQ PUSH2 0x98 JUMPI DUP1 PUSH4 0x5760FA05 EQ PUSH2 0xB6 JUMPI DUP1 PUSH4 0x5F7D462E EQ PUSH2 0xD4 JUMPI DUP1 PUSH4 0x7272EEA1 EQ PUSH2 0xF2 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA0 PUSH2 0x17E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAD SWAP2 SWAP1 PUSH2 0x407 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xBE PUSH2 0x191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCB SWAP2 SWAP1 PUSH2 0x394 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xDC PUSH2 0x1A4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE9 SWAP2 SWAP1 PUSH2 0x379 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xFA PUSH2 0x1CA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x107 SWAP2 SWAP1 PUSH2 0x3CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x118 PUSH2 0x1E1 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x122 PUSH2 0x20E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x12F SWAP2 SWAP1 PUSH2 0x3E5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x140 PUSH2 0x29C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x14A PUSH2 0x2C9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x157 SWAP2 SWAP1 PUSH2 0x3AF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x168 PUSH2 0x2CF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x175 SWAP2 SWAP1 PUSH2 0x379 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x8 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0xE PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE PUSH1 0x14 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0xE PUSH1 0x14 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0x1 DUP2 GT ISZERO PUSH2 0x207 JUMPI PUSH2 0x206 PUSH2 0x51D JUMP JUMPDEST JUMPDEST MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x6 DUP1 SLOAD PUSH2 0x21B SWAP1 PUSH2 0x4EB JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x247 SWAP1 PUSH2 0x4EB JUMP JUMPDEST DUP1 ISZERO PUSH2 0x294 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x269 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x294 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x277 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE PUSH1 0x14 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0x1 DUP2 GT ISZERO PUSH2 0x2C2 JUMPI PUSH2 0x2C1 PUSH2 0x51D JUMP JUMPDEST JUMPDEST MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH1 0xD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH2 0x2FE DUP2 PUSH2 0x43E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x30D DUP2 PUSH2 0x450 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x31C DUP2 PUSH2 0x45C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x32B DUP2 PUSH2 0x4A6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33C DUP3 PUSH2 0x422 JUMP JUMPDEST PUSH2 0x346 DUP2 DUP6 PUSH2 0x42D JUMP JUMPDEST SWAP4 POP PUSH2 0x356 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x4B8 JUMP JUMPDEST PUSH2 0x35F DUP2 PUSH2 0x57B JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x373 DUP2 PUSH2 0x499 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x38E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2F5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3A9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x304 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3C4 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x313 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3DF PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x322 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3FF DUP2 DUP5 PUSH2 0x331 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x41C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x36A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x449 DUP3 PUSH2 0x479 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH2 0x474 DUP3 PUSH2 0x58C JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4B1 DUP3 PUSH2 0x466 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x4D6 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4BB JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x4E5 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x503 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x517 JUMPI PUSH2 0x516 PUSH2 0x54C JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x21 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x2 DUP2 LT PUSH2 0x59D JUMPI PUSH2 0x59C PUSH2 0x51D JUMP JUMPDEST JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x1E 0x5E 0xE6 PUSH10 0xBB2EB30410A6C25307C6 GASPRICE DUP7 PUSH28 0x8B42F344620620EC32985FA4761AA764736F6C634300080700330000 ",
"sourceMap": "60:1214:0:-:0;;;215:1;198:18;;;;;;;;;;;;;;;;;;;;275:3;266:12;;;;;;;;;;;;;;;;;;;;;;293:2;285:10;;337:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;386:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;498:4;474:28;;;;;;;;;;;;;;;;;;;;535:5;509:31;;;;;;;;;;;;;;;;;;;;696:30;;;;;;;:::i;:::-;;;;;;;;;;;;;686:41;;;;;;661:66;;806:42;777:71;;;;;;;;;;;;;;;;;;;;883:10;855:38;;;;;;;;;;;;;;;;;;;;60:1214;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:402:1:-;167:3;188:85;270:2;265:3;188:85;:::i;:::-;181:92;;282:93;371:3;282:93;:::i;:::-;400:2;395:3;391:12;384:19;;7:402;;;:::o;415:381::-;600:3;622:148;766:3;622:148;:::i;:::-;615:155;;787:3;780:10;;415:381;;;:::o;802:148::-;904:11;941:3;926:18;;802:148;;;;:::o;956:320::-;1000:6;1037:1;1031:4;1027:12;1017:22;;1084:1;1078:4;1074:12;1105:18;1095:81;;1161:4;1153:6;1149:17;1139:27;;1095:81;1223:2;1215:6;1212:14;1192:18;1189:38;1186:84;;;1242:18;;:::i;:::-;1186:84;1007:269;956:320;;;:::o;1282:180::-;1330:77;1327:1;1320:88;1427:4;1424:1;1417:15;1451:4;1448:1;1441:15;1468:160;1608:12;1604:1;1596:6;1592:14;1585:36;1468:160;:::o;60:1214:0:-;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@addres_two_54": {
"entryPoint": 420,
"id": 54,
"parameterSlots": 0,
"returnSlots": 0
},
"@address_one_50": {
"entryPoint": 719,
"id": 50,
"parameterSlots": 0,
"returnSlots": 0
},
"@b_6": {
"entryPoint": 382,
"id": 6,
"parameterSlots": 0,
"returnSlots": 0
},
"@bool_true_28": {
"entryPoint": 401,
"id": 28,
"parameterSlots": 0,
"returnSlots": 0
},
"@displayState_92": {
"entryPoint": 458,
"id": 92,
"parameterSlots": 0,
"returnSlots": 1
},
"@hashing_45": {
"entryPoint": 713,
"id": 45,
"parameterSlots": 0,
"returnSlots": 0
},
"@str_public_20": {
"entryPoint": 526,
"id": 20,
"parameterSlots": 0,
"returnSlots": 0
},
"@turnOf_83": {
"entryPoint": 481,
"id": 83,
"parameterSlots": 0,
"returnSlots": 0
},
"@turnOn_74": {
"entryPoint": 668,
"id": 74,
"parameterSlots": 0,
"returnSlots": 0
},
"abi_encode_t_address_to_t_address_fromStack": {
"entryPoint": 757,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_bool_to_t_bool_fromStack": {
"entryPoint": 772,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_bytes32_to_t_bytes32_fromStack": {
"entryPoint": 787,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_enum$_options_$57_to_t_uint8_fromStack": {
"entryPoint": 802,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": {
"entryPoint": 817,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_uint8_to_t_uint8_fromStack": {
"entryPoint": 874,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_address__to_t_address__fromStack_reversed": {
"entryPoint": 889,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": {
"entryPoint": 916,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": {
"entryPoint": 943,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_enum$_options_$57__to_t_uint8__fromStack_reversed": {
"entryPoint": 970,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 997,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed": {
"entryPoint": 1031,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"array_length_t_string_memory_ptr": {
"entryPoint": 1058,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 1069,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_address": {
"entryPoint": 1086,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_bool": {
"entryPoint": 1104,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_bytes32": {
"entryPoint": 1116,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_enum$_options_$57": {
"entryPoint": 1126,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 1145,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint8": {
"entryPoint": 1177,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"convert_t_enum$_options_$57_to_t_uint8": {
"entryPoint": 1190,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"copy_memory_to_memory": {
"entryPoint": 1208,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"extract_byte_array_length": {
"entryPoint": 1259,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x21": {
"entryPoint": 1309,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x22": {
"entryPoint": 1356,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"round_up_to_mul_of_32": {
"entryPoint": 1403,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"validator_assert_t_enum$_options_$57": {
"entryPoint": 1420,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:4762:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "72:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "89:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "112:5:1"
}
],
"functionName": {
"name": "cleanup_t_address",
"nodeType": "YulIdentifier",
"src": "94:17:1"
},
"nodeType": "YulFunctionCall",
"src": "94:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "82:6:1"
},
"nodeType": "YulFunctionCall",
"src": "82:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "82:37:1"
}
]
},
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "60:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "67:3:1",
"type": ""
}
],
"src": "7:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "190:50:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "207:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "227:5:1"
}
],
"functionName": {
"name": "cleanup_t_bool",
"nodeType": "YulIdentifier",
"src": "212:14:1"
},
"nodeType": "YulFunctionCall",
"src": "212:21:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "200:6:1"
},
"nodeType": "YulFunctionCall",
"src": "200:34:1"
},
"nodeType": "YulExpressionStatement",
"src": "200:34:1"
}
]
},
"name": "abi_encode_t_bool_to_t_bool_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "178:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "185:3:1",
"type": ""
}
],
"src": "131:109:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "311:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "328:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "351:5:1"
}
],
"functionName": {
"name": "cleanup_t_bytes32",
"nodeType": "YulIdentifier",
"src": "333:17:1"
},
"nodeType": "YulFunctionCall",
"src": "333:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "321:6:1"
},
"nodeType": "YulFunctionCall",
"src": "321:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "321:37:1"
}
]
},
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "299:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "306:3:1",
"type": ""
}
],
"src": "246:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "443:74:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "460:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "504:5:1"
}
],
"functionName": {
"name": "convert_t_enum$_options_$57_to_t_uint8",
"nodeType": "YulIdentifier",
"src": "465:38:1"
},
"nodeType": "YulFunctionCall",
"src": "465:45:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "453:6:1"
},
"nodeType": "YulFunctionCall",
"src": "453:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "453:58:1"
}
]
},
"name": "abi_encode_t_enum$_options_$57_to_t_uint8_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "431:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "438:3:1",
"type": ""
}
],
"src": "370:147:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "615:272:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "625:53:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "672:5:1"
}
],
"functionName": {
"name": "array_length_t_string_memory_ptr",
"nodeType": "YulIdentifier",
"src": "639:32:1"
},
"nodeType": "YulFunctionCall",
"src": "639:39:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "629:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "687:78:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "753:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "758:6:1"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "694:58:1"
},
"nodeType": "YulFunctionCall",
"src": "694:71:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "687:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "800:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "807:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "796:3:1"
},
"nodeType": "YulFunctionCall",
"src": "796:16:1"
},
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "814:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "819:6:1"
}
],
"functionName": {
"name": "copy_memory_to_memory",
"nodeType": "YulIdentifier",
"src": "774:21:1"
},
"nodeType": "YulFunctionCall",
"src": "774:52:1"
},
"nodeType": "YulExpressionStatement",
"src": "774:52:1"
},
{
"nodeType": "YulAssignment",
"src": "835:46:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "846:3:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "873:6:1"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nodeType": "YulIdentifier",
"src": "851:21:1"
},
"nodeType": "YulFunctionCall",
"src": "851:29:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "842:3:1"
},
"nodeType": "YulFunctionCall",
"src": "842:39:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "835:3:1"
}
]
}
]
},
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "596:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "603:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "611:3:1",
"type": ""
}
],
"src": "523:364:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "954:51:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "971:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "992:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint8",
"nodeType": "YulIdentifier",
"src": "976:15:1"
},
"nodeType": "YulFunctionCall",
"src": "976:22:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "964:6:1"
},
"nodeType": "YulFunctionCall",
"src": "964:35:1"
},
"nodeType": "YulExpressionStatement",
"src": "964:35:1"
}
]
},
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "942:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "949:3:1",
"type": ""
}
],
"src": "893:112:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1109:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1119:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1131:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1142:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1127:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1127:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1119:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1199:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1212:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1223:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1208:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1208:17:1"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulIdentifier",
"src": "1155:43:1"
},
"nodeType": "YulFunctionCall",
"src": "1155:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "1155:71:1"
}
]
},
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1081:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1093:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "1104:4:1",
"type": ""
}
],
"src": "1011:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1331:118:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1341:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1353:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1364:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1349:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1349:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1341:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1415:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1428:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1439:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1424:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1424:17:1"
}
],
"functionName": {
"name": "abi_encode_t_bool_to_t_bool_fromStack",
"nodeType": "YulIdentifier",
"src": "1377:37:1"
},
"nodeType": "YulFunctionCall",
"src": "1377:65:1"
},
"nodeType": "YulExpressionStatement",
"src": "1377:65:1"
}
]
},
"name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1303:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1315:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "1326:4:1",
"type": ""
}
],
"src": "1239:210:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1553:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1563:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1575:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1586:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1571:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1571:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1563:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1643:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1656:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1667:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1652:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1652:17:1"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nodeType": "YulIdentifier",
"src": "1599:43:1"
},
"nodeType": "YulFunctionCall",
"src": "1599:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "1599:71:1"
}
]
},
"name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1525:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1537:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "1548:4:1",
"type": ""
}
],
"src": "1455:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1789:132:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1799:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1811:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1822:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1807:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1807:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "1799:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1887:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1900:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1911:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1896:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1896:17:1"
}
],
"functionName": {
"name": "abi_encode_t_enum$_options_$57_to_t_uint8_fromStack",
"nodeType": "YulIdentifier",
"src": "1835:51:1"
},
"nodeType": "YulFunctionCall",
"src": "1835:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "1835:79:1"
}
]
},
"name": "abi_encode_tuple_t_enum$_options_$57__to_t_uint8__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1761:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1773:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "1784:4:1",
"type": ""
}
],
"src": "1683:238:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2045:195:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2055:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2067:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2078:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2063:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2063:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2055:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2102:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2113:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2098:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2098:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2121:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2127:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "2117:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2117:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2091:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2091:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "2091:47:1"
},
{
"nodeType": "YulAssignment",
"src": "2147:86:1",
"value": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "2219:6:1"
},
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2228:4:1"
}
],
"functionName": {
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "2155:63:1"
},
"nodeType": "YulFunctionCall",
"src": "2155:78:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2147:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "2017:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "2029:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "2040:4:1",
"type": ""
}
],
"src": "1927:313:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2340:120:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2350:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2362:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2373:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2358:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2358:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2350:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "2426:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2439:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2450:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2435:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2435:17:1"
}
],
"functionName": {
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nodeType": "YulIdentifier",
"src": "2386:39:1"
},
"nodeType": "YulFunctionCall",
"src": "2386:67:1"
},
"nodeType": "YulExpressionStatement",
"src": "2386:67:1"
}
]
},
"name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "2312:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "2324:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "2335:4:1",
"type": ""
}
],
"src": "2246:214:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2525:40:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2536:22:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2552:5:1"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "2546:5:1"
},
"nodeType": "YulFunctionCall",
"src": "2546:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2536:6:1"
}
]
}
]
},
"name": "array_length_t_string_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2508:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2518:6:1",
"type": ""
}
],
"src": "2466:99:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2667:73:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "2684:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2689:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2677:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2677:19:1"
},
"nodeType": "YulExpressionStatement",
"src": "2677:19:1"
},
{
"nodeType": "YulAssignment",
"src": "2705:29:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "2724:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2729:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2720:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2720:14:1"
},
"variableNames": [
{
"name": "updated_pos",
"nodeType": "YulIdentifier",
"src": "2705:11:1"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "2639:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2644:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nodeType": "YulTypedName",
"src": "2655:11:1",
"type": ""
}
],
"src": "2571:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2791:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2801:35:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2830:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nodeType": "YulIdentifier",
"src": "2812:17:1"
},
"nodeType": "YulFunctionCall",
"src": "2812:24:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "2801:7:1"
}
]
}
]
},
"name": "cleanup_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2773:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "2783:7:1",
"type": ""
}
],
"src": "2746:96:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2890:48:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2900:32:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2925:5:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2918:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2918:13:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2911:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2911:21:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "2900:7:1"
}
]
}
]
},
"name": "cleanup_t_bool",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2872:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "2882:7:1",
"type": ""
}
],
"src": "2848:90:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2989:32:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2999:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "3010:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "2999:7:1"
}
]
}
]
},
"name": "cleanup_t_bytes32",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2971:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "2981:7:1",
"type": ""
}
],
"src": "2944:77:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3082:76:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3092:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "3103:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "3092:7:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3146:5:1"
}
],
"functionName": {
"name": "validator_assert_t_enum$_options_$57",
"nodeType": "YulIdentifier",
"src": "3109:36:1"
},
"nodeType": "YulFunctionCall",
"src": "3109:43:1"
},
"nodeType": "YulExpressionStatement",
"src": "3109:43:1"
}
]
},
"name": "cleanup_t_enum$_options_$57",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "3064:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "3074:7:1",
"type": ""
}
],
"src": "3027:131:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3209:81:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3219:65:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3234:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3241:42:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "3230:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3230:54:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "3219:7:1"
}
]
}
]
},
"name": "cleanup_t_uint160",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "3191:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "3201:7:1",
"type": ""
}
],
"src": "3164:126:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3339:43:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3349:27:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3364:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3371:4:1",
"type": "",
"value": "0xff"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "3360:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3360:16:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "3349:7:1"
}
]
}
]
},
"name": "cleanup_t_uint8",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "3321:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "3331:7:1",
"type": ""
}
],
"src": "3296:86:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3456:63:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3466:47:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3507:5:1"
}
],
"functionName": {
"name": "cleanup_t_enum$_options_$57",
"nodeType": "YulIdentifier",
"src": "3479:27:1"
},
"nodeType": "YulFunctionCall",
"src": "3479:34:1"
},
"variableNames": [
{
"name": "converted",
"nodeType": "YulIdentifier",
"src": "3466:9:1"
}
]
}
]
},
"name": "convert_t_enum$_options_$57_to_t_uint8",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "3436:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "converted",
"nodeType": "YulTypedName",
"src": "3446:9:1",
"type": ""
}
],
"src": "3388:131:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3574:258:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "3584:10:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "3593:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "i",
"nodeType": "YulTypedName",
"src": "3588:1:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "3653:63:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3678:3:1"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "3683:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3674:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3674:11:1"
},
{
"arguments": [
{
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "3697:3:1"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "3702:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3693:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3693:11:1"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "3687:5:1"
},
"nodeType": "YulFunctionCall",
"src": "3687:18:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3667:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3667:39:1"
},
"nodeType": "YulExpressionStatement",
"src": "3667:39:1"
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "3614:1:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3617:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "3611:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3611:13:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "3625:19:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3627:15:1",
"value": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "3636:1:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3639:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3632:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3632:10:1"
},
"variableNames": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "3627:1:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "3607:3:1",
"statements": []
},
"src": "3603:113:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3750:76:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3800:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3805:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3796:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3796:16:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3814:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3789:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3789:27:1"
},
"nodeType": "YulExpressionStatement",
"src": "3789:27:1"
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "3731:1:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3734:6:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "3728:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3728:13:1"
},
"nodeType": "YulIf",
"src": "3725:101:1"
}
]
},
"name": "copy_memory_to_memory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "3556:3:1",
"type": ""
},
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "3561:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3566:6:1",
"type": ""
}
],
"src": "3525:307:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3889:269:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3899:22:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "3913:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3919:1:1",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "3909:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3909:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3899:6:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "3930:38:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "3960:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3966:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "3956:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3956:12:1"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulTypedName",
"src": "3934:18:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "4007:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "4021:27:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4035:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4043:4:1",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "4031:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4031:17:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4021:6:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "3987:18:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "3980:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3980:26:1"
},
"nodeType": "YulIf",
"src": "3977:81:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4110:42:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x22",
"nodeType": "YulIdentifier",
"src": "4124:16:1"
},
"nodeType": "YulFunctionCall",
"src": "4124:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "4124:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "4074:18:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4097:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4105:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "4094:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4094:14:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "4071:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4071:38:1"
},
"nodeType": "YulIf",
"src": "4068:84:1"
}
]
},
"name": "extract_byte_array_length",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "3873:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3882:6:1",
"type": ""
}
],
"src": "3838:320:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4192:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4209:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4212:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4202:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4202:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "4202:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4306:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4309:4:1",
"type": "",
"value": "0x21"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4299:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4299:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "4299:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4330:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4333:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "4323:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4323:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "4323:15:1"
}
]
},
"name": "panic_error_0x21",
"nodeType": "YulFunctionDefinition",
"src": "4164:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4378:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4395:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4398:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4388:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4388:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "4388:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4492:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4495:4:1",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4485:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4485:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "4485:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4516:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4519:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "4509:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4509:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "4509:15:1"
}
]
},
"name": "panic_error_0x22",
"nodeType": "YulFunctionDefinition",
"src": "4350:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4584:54:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "4594:38:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "4612:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4619:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4608:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4608:14:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4628:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "4624:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4624:7:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "4604:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4604:28:1"
},
"variableNames": [
{
"name": "result",
"nodeType": "YulIdentifier",
"src": "4594:6:1"
}
]
}
]
},
"name": "round_up_to_mul_of_32",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "4567:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nodeType": "YulTypedName",
"src": "4577:6:1",
"type": ""
}
],
"src": "4536:102:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4697:62:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "4731:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x21",
"nodeType": "YulIdentifier",
"src": "4733:16:1"
},
"nodeType": "YulFunctionCall",
"src": "4733:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "4733:18:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "4720:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4727:1:1",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "4717:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4717:12:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "4710:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4710:20:1"
},
"nodeType": "YulIf",
"src": "4707:46:1"
}
]
},
"name": "validator_assert_t_enum$_options_$57",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "4690:5:1",
"type": ""
}
],
"src": "4644:115:1"
}
]
},
"contents": "{\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_enum$_options_$57_to_t_uint8_fromStack(value, pos) {\n mstore(pos, convert_t_enum$_options_$57_to_t_uint8(value))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_uint8_to_t_uint8_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint8(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_enum$_options_$57__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_enum$_options_$57_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint8_to_t_uint8_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_enum$_options_$57(value) -> cleaned {\n cleaned := value validator_assert_t_enum$_options_$57(value)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint8(value) -> cleaned {\n cleaned := and(value, 0xff)\n }\n\n function convert_t_enum$_options_$57_to_t_uint8(value) -> converted {\n converted := cleanup_t_enum$_options_$57(value)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function panic_error_0x21() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x21)\n revert(0, 0x24)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function validator_assert_t_enum$_options_$57(value) {\n if iszero(lt(value, 2)) { panic_error_0x21() }\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "608060405234801561001057600080fd5b50600436106100935760003560e01c8063b654b76511610066578063b654b76514610110578063b83d07b71461011a578063ba33ed7d14610138578063cd97d84e14610142578063e2bed7b41461016057610093565b80634df7e3d0146100985780635760fa05146100b65780635f7d462e146100d45780637272eea1146100f2575b600080fd5b6100a061017e565b6040516100ad9190610407565b60405180910390f35b6100be610191565b6040516100cb9190610394565b60405180910390f35b6100dc6101a4565b6040516100e99190610379565b60405180910390f35b6100fa6101ca565b60405161010791906103ca565b60405180910390f35b6101186101e1565b005b61012261020e565b60405161012f91906103e5565b60405180910390f35b61014061029c565b005b61014a6102c9565b60405161015791906103af565b60405180910390f35b6101686102cf565b6040516101759190610379565b60405180910390f35b600160009054906101000a900460ff1681565b600860019054906101000a900460ff1681565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600e60149054906101000a900460ff16905090565b6001600e60146101000a81548160ff021916908360018111156102075761020661051d565b5b0217905550565b6006805461021b906104eb565b80601f0160208091040260200160405190810160405280929190818152602001828054610247906104eb565b80156102945780601f1061026957610100808354040283529160200191610294565b820191906000526020600020905b81548152906001019060200180831161027757829003601f168201915b505050505081565b6000600e60146101000a81548160ff021916908360018111156102c2576102c161051d565b5b0217905550565b600b5481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6102fe8161043e565b82525050565b61030d81610450565b82525050565b61031c8161045c565b82525050565b61032b816104a6565b82525050565b600061033c82610422565b610346818561042d565b93506103568185602086016104b8565b61035f8161057b565b840191505092915050565b61037381610499565b82525050565b600060208201905061038e60008301846102f5565b92915050565b60006020820190506103a96000830184610304565b92915050565b60006020820190506103c46000830184610313565b92915050565b60006020820190506103df6000830184610322565b92915050565b600060208201905081810360008301526103ff8184610331565b905092915050565b600060208201905061041c600083018461036a565b92915050565b600081519050919050565b600082825260208201905092915050565b600061044982610479565b9050919050565b60008115159050919050565b6000819050919050565b60008190506104748261058c565b919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600060ff82169050919050565b60006104b182610466565b9050919050565b60005b838110156104d65780820151818401526020810190506104bb565b838111156104e5576000848401525b50505050565b6000600282049050600182168061050357607f821691505b602082108114156105175761051661054c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b6002811061059d5761059c61051d565b5b5056fea26469706673582212201e5ee669bb2eb30410a6c25307c63a867b8b42f344620620ec32985fa4761aa764736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x93 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xB654B765 GT PUSH2 0x66 JUMPI DUP1 PUSH4 0xB654B765 EQ PUSH2 0x110 JUMPI DUP1 PUSH4 0xB83D07B7 EQ PUSH2 0x11A JUMPI DUP1 PUSH4 0xBA33ED7D EQ PUSH2 0x138 JUMPI DUP1 PUSH4 0xCD97D84E EQ PUSH2 0x142 JUMPI DUP1 PUSH4 0xE2BED7B4 EQ PUSH2 0x160 JUMPI PUSH2 0x93 JUMP JUMPDEST DUP1 PUSH4 0x4DF7E3D0 EQ PUSH2 0x98 JUMPI DUP1 PUSH4 0x5760FA05 EQ PUSH2 0xB6 JUMPI DUP1 PUSH4 0x5F7D462E EQ PUSH2 0xD4 JUMPI DUP1 PUSH4 0x7272EEA1 EQ PUSH2 0xF2 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xA0 PUSH2 0x17E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAD SWAP2 SWAP1 PUSH2 0x407 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xBE PUSH2 0x191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCB SWAP2 SWAP1 PUSH2 0x394 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xDC PUSH2 0x1A4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE9 SWAP2 SWAP1 PUSH2 0x379 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xFA PUSH2 0x1CA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x107 SWAP2 SWAP1 PUSH2 0x3CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x118 PUSH2 0x1E1 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x122 PUSH2 0x20E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x12F SWAP2 SWAP1 PUSH2 0x3E5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x140 PUSH2 0x29C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x14A PUSH2 0x2C9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x157 SWAP2 SWAP1 PUSH2 0x3AF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x168 PUSH2 0x2CF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x175 SWAP2 SWAP1 PUSH2 0x379 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0x8 PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH1 0xE PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE PUSH1 0x14 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0xE PUSH1 0x14 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0x1 DUP2 GT ISZERO PUSH2 0x207 JUMPI PUSH2 0x206 PUSH2 0x51D JUMP JUMPDEST JUMPDEST MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x6 DUP1 SLOAD PUSH2 0x21B SWAP1 PUSH2 0x4EB JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x247 SWAP1 PUSH2 0x4EB JUMP JUMPDEST DUP1 ISZERO PUSH2 0x294 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x269 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x294 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x277 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE PUSH1 0x14 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0x1 DUP2 GT ISZERO PUSH2 0x2C2 JUMPI PUSH2 0x2C1 PUSH2 0x51D JUMP JUMPDEST JUMPDEST MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0xB SLOAD DUP2 JUMP JUMPDEST PUSH1 0xD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH2 0x2FE DUP2 PUSH2 0x43E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x30D DUP2 PUSH2 0x450 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x31C DUP2 PUSH2 0x45C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x32B DUP2 PUSH2 0x4A6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33C DUP3 PUSH2 0x422 JUMP JUMPDEST PUSH2 0x346 DUP2 DUP6 PUSH2 0x42D JUMP JUMPDEST SWAP4 POP PUSH2 0x356 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x4B8 JUMP JUMPDEST PUSH2 0x35F DUP2 PUSH2 0x57B JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x373 DUP2 PUSH2 0x499 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x38E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2F5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3A9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x304 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3C4 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x313 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3DF PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x322 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3FF DUP2 DUP5 PUSH2 0x331 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x41C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x36A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x449 DUP3 PUSH2 0x479 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH2 0x474 DUP3 PUSH2 0x58C JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4B1 DUP3 PUSH2 0x466 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x4D6 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4BB JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x4E5 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x503 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x517 JUMPI PUSH2 0x516 PUSH2 0x54C JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x21 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x2 DUP2 LT PUSH2 0x59D JUMPI PUSH2 0x59C PUSH2 0x51D JUMP JUMPDEST JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x1E 0x5E 0xE6 PUSH10 0xBB2EB30410A6C25307C6 GASPRICE DUP7 PUSH28 0x8B42F344620620EC32985FA4761AA764736F6C634300080700330000 ",
"sourceMap": "60:1214:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;198:18;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;474:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;855:38;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1183:84;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1112:63;;;:::i;:::-;;337:42;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1042:62;;;:::i;:::-;;661:66;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;777:71;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;198:18;;;;;;;;;;;;;:::o;474:28::-;;;;;;;;;;;;;:::o;855:38::-;;;;;;;;;;;;;:::o;1183:84::-;1228:7;1254:5;;;;;;;;;;;1247:12;;1183:84;:::o;1112:63::-;1156:11;1148:5;;:19;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;1112:63::o;337:42::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1042:62::-;1086:10;1078:5;;:18;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;1042:62::o;661:66::-;;;;:::o;777:71::-;;;;;;;;;;;;;:::o;7:118:1:-;94:24;112:5;94:24;:::i;:::-;89:3;82:37;7:118;;:::o;131:109::-;212:21;227:5;212:21;:::i;:::-;207:3;200:34;131:109;;:::o;246:118::-;333:24;351:5;333:24;:::i;:::-;328:3;321:37;246:118;;:::o;370:147::-;465:45;504:5;465:45;:::i;:::-;460:3;453:58;370:147;;:::o;523:364::-;611:3;639:39;672:5;639:39;:::i;:::-;694:71;758:6;753:3;694:71;:::i;:::-;687:78;;774:52;819:6;814:3;807:4;800:5;796:16;774:52;:::i;:::-;851:29;873:6;851:29;:::i;:::-;846:3;842:39;835:46;;615:272;523:364;;;;:::o;893:112::-;976:22;992:5;976:22;:::i;:::-;971:3;964:35;893:112;;:::o;1011:222::-;1104:4;1142:2;1131:9;1127:18;1119:26;;1155:71;1223:1;1212:9;1208:17;1199:6;1155:71;:::i;:::-;1011:222;;;;:::o;1239:210::-;1326:4;1364:2;1353:9;1349:18;1341:26;;1377:65;1439:1;1428:9;1424:17;1415:6;1377:65;:::i;:::-;1239:210;;;;:::o;1455:222::-;1548:4;1586:2;1575:9;1571:18;1563:26;;1599:71;1667:1;1656:9;1652:17;1643:6;1599:71;:::i;:::-;1455:222;;;;:::o;1683:238::-;1784:4;1822:2;1811:9;1807:18;1799:26;;1835:79;1911:1;1900:9;1896:17;1887:6;1835:79;:::i;:::-;1683:238;;;;:::o;1927:313::-;2040:4;2078:2;2067:9;2063:18;2055:26;;2127:9;2121:4;2117:20;2113:1;2102:9;2098:17;2091:47;2155:78;2228:4;2219:6;2155:78;:::i;:::-;2147:86;;1927:313;;;;:::o;2246:214::-;2335:4;2373:2;2362:9;2358:18;2350:26;;2386:67;2450:1;2439:9;2435:17;2426:6;2386:67;:::i;:::-;2246:214;;;;:::o;2466:99::-;2518:6;2552:5;2546:12;2536:22;;2466:99;;;:::o;2571:169::-;2655:11;2689:6;2684:3;2677:19;2729:4;2724:3;2720:14;2705:29;;2571:169;;;;:::o;2746:96::-;2783:7;2812:24;2830:5;2812:24;:::i;:::-;2801:35;;2746:96;;;:::o;2848:90::-;2882:7;2925:5;2918:13;2911:21;2900:32;;2848:90;;;:::o;2944:77::-;2981:7;3010:5;2999:16;;2944:77;;;:::o;3027:131::-;3074:7;3103:5;3092:16;;3109:43;3146:5;3109:43;:::i;:::-;3027:131;;;:::o;3164:126::-;3201:7;3241:42;3234:5;3230:54;3219:65;;3164:126;;;:::o;3296:86::-;3331:7;3371:4;3364:5;3360:16;3349:27;;3296:86;;;:::o;3388:131::-;3446:9;3479:34;3507:5;3479:34;:::i;:::-;3466:47;;3388:131;;;:::o;3525:307::-;3593:1;3603:113;3617:6;3614:1;3611:13;3603:113;;;3702:1;3697:3;3693:11;3687:18;3683:1;3678:3;3674:11;3667:39;3639:2;3636:1;3632:10;3627:15;;3603:113;;;3734:6;3731:1;3728:13;3725:101;;;3814:1;3805:6;3800:3;3796:16;3789:27;3725:101;3574:258;3525:307;;;:::o;3838:320::-;3882:6;3919:1;3913:4;3909:12;3899:22;;3966:1;3960:4;3956:12;3987:18;3977:81;;4043:4;4035:6;4031:17;4021:27;;3977:81;4105:2;4097:6;4094:14;4074:18;4071:38;4068:84;;;4124:18;;:::i;:::-;4068:84;3889:269;3838:320;;;:::o;4164:180::-;4212:77;4209:1;4202:88;4309:4;4306:1;4299:15;4333:4;4330:1;4323:15;4350:180;4398:77;4395:1;4388:88;4495:4;4492:1;4485:15;4519:4;4516:1;4509:15;4536:102;4577:6;4628:2;4624:7;4619:2;4612:5;4608:14;4604:28;4594:38;;4536:102;;;:::o;4644:115::-;4727:1;4720:5;4717:12;4707:46;;4733:18;;:::i;:::-;4707:46;4644:115;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "298800",
"executionCost": "infinite",
"totalCost": "infinite"
},
"external": {
"addres_two()": "2559",
"address_one()": "2602",
"b()": "2472",
"bool_true()": "2544",
"displayState()": "2685",
"hashing()": "2495",
"str_public()": "infinite",
"turnOf()": "24481",
"turnOn()": "24525"
}
},
"legacyAssembly": {
".code": [
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 1274,
"name": "MSTORE",
"source": 0
},
{
"begin": 215,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "3"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 198,
"end": 216,
"name": "EXP",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "NOT",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP4",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "MUL",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "OR",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SSTORE",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "POP",
"source": 0
},
{
"begin": 275,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0"
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "3"
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 266,
"end": 278,
"name": "EXP",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "DUP2",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SLOAD",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "DUP2",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 266,
"end": 278,
"name": "MUL",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "NOT",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "AND",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SWAP1",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "DUP4",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 266,
"end": 278,
"name": "SIGNEXTEND",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 266,
"end": 278,
"name": "AND",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "MUL",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "OR",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SWAP1",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "SSTORE",
"source": 0
},
{
"begin": 266,
"end": 278,
"name": "POP",
"source": 0
},
{
"begin": 293,
"end": 295,
"name": "PUSH",
"source": 0,
"value": "41"
},
{
"begin": 285,
"end": 295,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 285,
"end": 295,
"name": "SSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "D"
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "537472696E67207075626C696300000000000000000000000000000000000000"
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "6"
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 337,
"end": 379,
"name": "SWAP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "POP",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 386,
"end": 431,
"name": "MLOAD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 386,
"end": 431,
"name": "ADD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 386,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "E"
},
{
"begin": 386,
"end": 431,
"name": "DUP2",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 386,
"end": 431,
"name": "ADD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "537472696E672050726976617465000000000000000000000000000000000000"
},
{
"begin": 386,
"end": 431,
"name": "DUP2",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "POP",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "7"
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "MLOAD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 386,
"end": 431,
"name": "ADD",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 386,
"end": 431,
"name": "SWAP3",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP2",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "SWAP1",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 386,
"end": 431,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 386,
"end": 431,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 386,
"end": 431,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 386,
"end": 431,
"name": "POP",
"source": 0
},
{
"begin": 498,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "8"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 474,
"end": 502,
"name": "EXP",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 474,
"end": 502,
"name": "MUL",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "NOT",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "AND",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP4",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "ISZERO",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "ISZERO",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "MUL",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "OR",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SSTORE",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "POP",
"source": 0
},
{
"begin": 535,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "8"
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 509,
"end": 540,
"name": "EXP",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "DUP2",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SLOAD",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "DUP2",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 509,
"end": 540,
"name": "MUL",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "NOT",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "AND",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SWAP1",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "DUP4",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "ISZERO",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "ISZERO",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "MUL",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "OR",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SWAP1",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "SSTORE",
"source": 0
},
{
"begin": 509,
"end": 540,
"name": "POP",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 696,
"end": 726,
"name": "MLOAD",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 696,
"end": 726,
"name": "ADD",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 696,
"end": 726,
"name": "SWAP1",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 696,
"end": 726,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 696,
"end": 726,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 696,
"end": 726,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 696,
"end": 726,
"name": "MLOAD",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 696,
"end": 726,
"name": "DUP2",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "DUP4",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "SUB",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "SUB",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "DUP2",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "MSTORE",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "SWAP1",
"source": 0
},
{
"begin": 696,
"end": 726,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 696,
"end": 726,
"name": "MSTORE",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "DUP1",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "MLOAD",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "SWAP1",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 686,
"end": 727,
"name": "ADD",
"source": 0
},
{
"begin": 686,
"end": 727,
"name": "KECCAK256",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH",
"source": 0,
"value": "B"
},
{
"begin": 661,
"end": 727,
"name": "SSTORE",
"source": 0
},
{
"begin": 806,
"end": 848,
"name": "PUSH",
"source": 0,
"value": "5B38DA6A701C568545DCFCB03FCB875F56BEDDC4"
},
{
"begin": 777,
"end": 848,
"name": "PUSH",
"source": 0,
"value": "D"
},
{
"begin": 777,
"end": 848,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 777,
"end": 848,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 777,
"end": 848,
"name": "EXP",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "DUP2",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "SLOAD",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "DUP2",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 777,
"end": 848,
"name": "MUL",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "NOT",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "AND",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "SWAP1",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "DUP4",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 777,
"end": 848,
"name": "AND",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "MUL",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "OR",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "SWAP1",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "SSTORE",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "POP",
"source": 0
},
{
"begin": 883,
"end": 893,
"name": "CALLER",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "E"
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 855,
"end": 893,
"name": "EXP",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "DUP2",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SLOAD",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "DUP2",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 855,
"end": 893,
"name": "MUL",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "NOT",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "AND",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SWAP1",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "DUP4",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 855,
"end": 893,
"name": "AND",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "MUL",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "OR",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SWAP1",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SSTORE",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "REVERT",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SLOAD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "MSTORE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "KECCAK256",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 60,
"end": 1274,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DIV",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP2",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "DUP6",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 60,
"end": 1274,
"name": "LT",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "MLOAD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 60,
"end": 1274,
"name": "NOT",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "AND",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP4",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "OR",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP6",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "12"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 1274,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP6",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP2",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "GT",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "MLOAD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 60,
"end": 1274,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 1274,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "14"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "15"
},
{
"begin": 60,
"end": 1274,
"name": "SWAP2",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "16"
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "15"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "16"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "17"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP3",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "GT",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "18"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "DUP2",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SSTORE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 1274,
"name": "ADD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "18"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "SWAP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 7,
"end": 409,
"name": "tag",
"source": 1,
"value": "20"
},
{
"begin": 7,
"end": 409,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 167,
"end": 170,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 188,
"end": 273,
"name": "PUSH [tag]",
"source": 1,
"value": "22"
},
{
"begin": 270,
"end": 272,
"name": "PUSH",
"source": 1,
"value": "A"
},
{
"begin": 265,
"end": 268,
"name": "DUP4",
"source": 1
},
{
"begin": 188,
"end": 273,
"name": "PUSH [tag]",
"source": 1,
"value": "23"
},
{
"begin": 188,
"end": 273,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 188,
"end": 273,
"name": "tag",
"source": 1,
"value": "22"
},
{
"begin": 188,
"end": 273,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 181,
"end": 273,
"name": "SWAP2",
"source": 1
},
{
"begin": 181,
"end": 273,
"name": "POP",
"source": 1
},
{
"begin": 282,
"end": 375,
"name": "PUSH [tag]",
"source": 1,
"value": "24"
},
{
"begin": 371,
"end": 374,
"name": "DUP3",
"source": 1
},
{
"begin": 282,
"end": 375,
"name": "PUSH [tag]",
"source": 1,
"value": "25"
},
{
"begin": 282,
"end": 375,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 282,
"end": 375,
"name": "tag",
"source": 1,
"value": "24"
},
{
"begin": 282,
"end": 375,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 400,
"end": 402,
"name": "PUSH",
"source": 1,
"value": "A"
},
{
"begin": 395,
"end": 398,
"name": "DUP3",
"source": 1
},
{
"begin": 391,
"end": 403,
"name": "ADD",
"source": 1
},
{
"begin": 384,
"end": 403,
"name": "SWAP1",
"source": 1
},
{
"begin": 384,
"end": 403,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 409,
"name": "SWAP2",
"source": 1
},
{
"begin": 7,
"end": 409,
"name": "SWAP1",
"source": 1
},
{
"begin": 7,
"end": 409,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 409,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 415,
"end": 796,
"name": "tag",
"source": 1,
"value": "5"
},
{
"begin": 415,
"end": 796,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 600,
"end": 603,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 622,
"end": 770,
"name": "PUSH [tag]",
"source": 1,
"value": "27"
},
{
"begin": 766,
"end": 769,
"name": "DUP3",
"source": 1
},
{
"begin": 622,
"end": 770,
"name": "PUSH [tag]",
"source": 1,
"value": "20"
},
{
"begin": 622,
"end": 770,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 622,
"end": 770,
"name": "tag",
"source": 1,
"value": "27"
},
{
"begin": 622,
"end": 770,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 615,
"end": 770,
"name": "SWAP2",
"source": 1
},
{
"begin": 615,
"end": 770,
"name": "POP",
"source": 1
},
{
"begin": 787,
"end": 790,
"name": "DUP2",
"source": 1
},
{
"begin": 780,
"end": 790,
"name": "SWAP1",
"source": 1
},
{
"begin": 780,
"end": 790,
"name": "POP",
"source": 1
},
{
"begin": 415,
"end": 796,
"name": "SWAP2",
"source": 1
},
{
"begin": 415,
"end": 796,
"name": "SWAP1",
"source": 1
},
{
"begin": 415,
"end": 796,
"name": "POP",
"source": 1
},
{
"begin": 415,
"end": 796,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 802,
"end": 950,
"name": "tag",
"source": 1,
"value": "23"
},
{
"begin": 802,
"end": 950,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 904,
"end": 915,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 941,
"end": 944,
"name": "DUP2",
"source": 1
},
{
"begin": 926,
"end": 944,
"name": "SWAP1",
"source": 1
},
{
"begin": 926,
"end": 944,
"name": "POP",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "SWAP3",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "SWAP2",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "POP",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "POP",
"source": 1
},
{
"begin": 802,
"end": 950,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 956,
"end": 1276,
"name": "tag",
"source": 1,
"value": "9"
},
{
"begin": 956,
"end": 1276,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1000,
"end": 1006,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1037,
"end": 1038,
"name": "PUSH",
"source": 1,
"value": "2"
},
{
"begin": 1031,
"end": 1035,
"name": "DUP3",
"source": 1
},
{
"begin": 1027,
"end": 1039,
"name": "DIV",
"source": 1
},
{
"begin": 1017,
"end": 1039,
"name": "SWAP1",
"source": 1
},
{
"begin": 1017,
"end": 1039,
"name": "POP",
"source": 1
},
{
"begin": 1084,
"end": 1085,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 1078,
"end": 1082,
"name": "DUP3",
"source": 1
},
{
"begin": 1074,
"end": 1086,
"name": "AND",
"source": 1
},
{
"begin": 1105,
"end": 1123,
"name": "DUP1",
"source": 1
},
{
"begin": 1095,
"end": 1176,
"name": "PUSH [tag]",
"source": 1,
"value": "30"
},
{
"begin": 1095,
"end": 1176,
"name": "JUMPI",
"source": 1
},
{
"begin": 1161,
"end": 1165,
"name": "PUSH",
"source": 1,
"value": "7F"
},
{
"begin": 1153,
"end": 1159,
"name": "DUP3",
"source": 1
},
{
"begin": 1149,
"end": 1166,
"name": "AND",
"source": 1
},
{
"begin": 1139,
"end": 1166,
"name": "SWAP2",
"source": 1
},
{
"begin": 1139,
"end": 1166,
"name": "POP",
"source": 1
},
{
"begin": 1095,
"end": 1176,
"name": "tag",
"source": 1,
"value": "30"
},
{
"begin": 1095,
"end": 1176,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1223,
"end": 1225,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1215,
"end": 1221,
"name": "DUP3",
"source": 1
},
{
"begin": 1212,
"end": 1226,
"name": "LT",
"source": 1
},
{
"begin": 1192,
"end": 1210,
"name": "DUP2",
"source": 1
},
{
"begin": 1189,
"end": 1227,
"name": "EQ",
"source": 1
},
{
"begin": 1186,
"end": 1270,
"name": "ISZERO",
"source": 1
},
{
"begin": 1186,
"end": 1270,
"name": "PUSH [tag]",
"source": 1,
"value": "31"
},
{
"begin": 1186,
"end": 1270,
"name": "JUMPI",
"source": 1
},
{
"begin": 1242,
"end": 1260,
"name": "PUSH [tag]",
"source": 1,
"value": "32"
},
{
"begin": 1242,
"end": 1260,
"name": "PUSH [tag]",
"source": 1,
"value": "33"
},
{
"begin": 1242,
"end": 1260,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1242,
"end": 1260,
"name": "tag",
"source": 1,
"value": "32"
},
{
"begin": 1242,
"end": 1260,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1186,
"end": 1270,
"name": "tag",
"source": 1,
"value": "31"
},
{
"begin": 1186,
"end": 1270,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1007,
"end": 1276,
"name": "POP",
"source": 1
},
{
"begin": 956,
"end": 1276,
"name": "SWAP2",
"source": 1
},
{
"begin": 956,
"end": 1276,
"name": "SWAP1",
"source": 1
},
{
"begin": 956,
"end": 1276,
"name": "POP",
"source": 1
},
{
"begin": 956,
"end": 1276,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1282,
"end": 1462,
"name": "tag",
"source": 1,
"value": "33"
},
{
"begin": 1282,
"end": 1462,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1330,
"end": 1407,
"name": "PUSH",
"source": 1,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 1327,
"end": 1328,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1320,
"end": 1408,
"name": "MSTORE",
"source": 1
},
{
"begin": 1427,
"end": 1431,
"name": "PUSH",
"source": 1,
"value": "22"
},
{
"begin": 1424,
"end": 1425,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 1417,
"end": 1432,
"name": "MSTORE",
"source": 1
},
{
"begin": 1451,
"end": 1455,
"name": "PUSH",
"source": 1,
"value": "24"
},
{
"begin": 1448,
"end": 1449,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1441,
"end": 1456,
"name": "REVERT",
"source": 1
},
{
"begin": 1468,
"end": 1628,
"name": "tag",
"source": 1,
"value": "25"
},
{
"begin": 1468,
"end": 1628,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1608,
"end": 1620,
"name": "PUSH",
"source": 1,
"value": "48656C6C6F20776F726400000000000000000000000000000000000000000000"
},
{
"begin": 1604,
"end": 1605,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1596,
"end": 1602,
"name": "DUP3",
"source": 1
},
{
"begin": 1592,
"end": 1606,
"name": "ADD",
"source": 1
},
{
"begin": 1585,
"end": 1621,
"name": "MSTORE",
"source": 1
},
{
"begin": 1468,
"end": 1628,
"name": "POP",
"source": 1
},
{
"begin": 1468,
"end": 1628,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "CODECOPY",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a26469706673582212201e5ee669bb2eb30410a6c25307c63a867b8b42f344620620ec32985fa4761aa764736f6c63430008070033",
".code": [
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 60,
"end": 1274,
"name": "MSTORE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "ISZERO",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "REVERT",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "POP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 60,
"end": 1274,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "LT",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 60,
"end": 1274,
"name": "SHR",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "B654B765"
},
{
"begin": 60,
"end": 1274,
"name": "GT",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "B654B765"
},
{
"begin": 60,
"end": 1274,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "B83D07B7"
},
{
"begin": 60,
"end": 1274,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "BA33ED7D"
},
{
"begin": 60,
"end": 1274,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "CD97D84E"
},
{
"begin": 60,
"end": 1274,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "E2BED7B4"
},
{
"begin": 60,
"end": 1274,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 1274,
"name": "JUMP",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "12"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "4DF7E3D0"
},
{
"begin": 60,
"end": 1274,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "5760FA05"
},
{
"begin": 60,
"end": 1274,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "5F7D462E"
},
{
"begin": 60,
"end": 1274,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "7272EEA1"
},
{
"begin": 60,
"end": 1274,
"name": "EQ",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPI",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 60,
"end": 1274,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 60,
"end": 1274,
"name": "DUP1",
"source": 0
},
{
"begin": 60,
"end": 1274,
"name": "REVERT",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 198,
"end": 216,
"name": "MLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "15"
},
{
"begin": 198,
"end": 216,
"name": "SWAP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH [tag]",
"source": 0,
"value": "16"
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "15"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 198,
"end": 216,
"name": "MLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SUB",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "RETURN",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "18"
},
{
"begin": 474,
"end": 502,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "17"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 474,
"end": 502,
"name": "MLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 474,
"end": 502,
"name": "SWAP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH [tag]",
"source": 0,
"value": "20"
},
{
"begin": 474,
"end": 502,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "19"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 474,
"end": 502,
"name": "MLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SUB",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "RETURN",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 855,
"end": 893,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH [tag]",
"source": 0,
"value": "21"
},
{
"begin": 855,
"end": 893,
"name": "PUSH [tag]",
"source": 0,
"value": "22"
},
{
"begin": 855,
"end": 893,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 855,
"end": 893,
"name": "tag",
"source": 0,
"value": "21"
},
{
"begin": 855,
"end": 893,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 855,
"end": 893,
"name": "MLOAD",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH [tag]",
"source": 0,
"value": "23"
},
{
"begin": 855,
"end": 893,
"name": "SWAP2",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SWAP1",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH [tag]",
"source": 0,
"value": "24"
},
{
"begin": 855,
"end": 893,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 855,
"end": 893,
"name": "tag",
"source": 0,
"value": "23"
},
{
"begin": 855,
"end": 893,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 855,
"end": 893,
"name": "MLOAD",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "DUP1",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SWAP2",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SUB",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SWAP1",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "RETURN",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 1183,
"end": 1267,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "PUSH [tag]",
"source": 0,
"value": "25"
},
{
"begin": 1183,
"end": 1267,
"name": "PUSH [tag]",
"source": 0,
"value": "26"
},
{
"begin": 1183,
"end": 1267,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 1183,
"end": 1267,
"name": "tag",
"source": 0,
"value": "25"
},
{
"begin": 1183,
"end": 1267,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 1183,
"end": 1267,
"name": "MLOAD",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "PUSH [tag]",
"source": 0,
"value": "27"
},
{
"begin": 1183,
"end": 1267,
"name": "SWAP2",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "SWAP1",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "PUSH [tag]",
"source": 0,
"value": "28"
},
{
"begin": 1183,
"end": 1267,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 1183,
"end": 1267,
"name": "tag",
"source": 0,
"value": "27"
},
{
"begin": 1183,
"end": 1267,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 1183,
"end": 1267,
"name": "MLOAD",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "DUP1",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "SWAP2",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "SUB",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "SWAP1",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "RETURN",
"source": 0
},
{
"begin": 1112,
"end": 1175,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 1112,
"end": 1175,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1112,
"end": 1175,
"name": "PUSH [tag]",
"source": 0,
"value": "29"
},
{
"begin": 1112,
"end": 1175,
"name": "PUSH [tag]",
"source": 0,
"value": "30"
},
{
"begin": 1112,
"end": 1175,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 1112,
"end": 1175,
"name": "tag",
"source": 0,
"value": "29"
},
{
"begin": 1112,
"end": 1175,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1112,
"end": 1175,
"name": "STOP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "31"
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "32"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "31"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "33"
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "34"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "33"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SUB",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "RETURN",
"source": 0
},
{
"begin": 1042,
"end": 1104,
"name": "tag",
"source": 0,
"value": "9"
},
{
"begin": 1042,
"end": 1104,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1042,
"end": 1104,
"name": "PUSH [tag]",
"source": 0,
"value": "35"
},
{
"begin": 1042,
"end": 1104,
"name": "PUSH [tag]",
"source": 0,
"value": "36"
},
{
"begin": 1042,
"end": 1104,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 1042,
"end": 1104,
"name": "tag",
"source": 0,
"value": "35"
},
{
"begin": 1042,
"end": 1104,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1042,
"end": 1104,
"name": "STOP",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 661,
"end": 727,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH [tag]",
"source": 0,
"value": "37"
},
{
"begin": 661,
"end": 727,
"name": "PUSH [tag]",
"source": 0,
"value": "38"
},
{
"begin": 661,
"end": 727,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 661,
"end": 727,
"name": "tag",
"source": 0,
"value": "37"
},
{
"begin": 661,
"end": 727,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 661,
"end": 727,
"name": "MLOAD",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH [tag]",
"source": 0,
"value": "39"
},
{
"begin": 661,
"end": 727,
"name": "SWAP2",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "SWAP1",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH [tag]",
"source": 0,
"value": "40"
},
{
"begin": 661,
"end": 727,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 661,
"end": 727,
"name": "tag",
"source": 0,
"value": "39"
},
{
"begin": 661,
"end": 727,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 661,
"end": 727,
"name": "MLOAD",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "DUP1",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "SWAP2",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "SUB",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "SWAP1",
"source": 0
},
{
"begin": 661,
"end": 727,
"name": "RETURN",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 777,
"end": 848,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "PUSH [tag]",
"source": 0,
"value": "41"
},
{
"begin": 777,
"end": 848,
"name": "PUSH [tag]",
"source": 0,
"value": "42"
},
{
"begin": 777,
"end": 848,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 777,
"end": 848,
"name": "tag",
"source": 0,
"value": "41"
},
{
"begin": 777,
"end": 848,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 777,
"end": 848,
"name": "MLOAD",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "PUSH [tag]",
"source": 0,
"value": "43"
},
{
"begin": 777,
"end": 848,
"name": "SWAP2",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "SWAP1",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "PUSH [tag]",
"source": 0,
"value": "24"
},
{
"begin": 777,
"end": 848,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 777,
"end": 848,
"name": "tag",
"source": 0,
"value": "43"
},
{
"begin": 777,
"end": 848,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 777,
"end": 848,
"name": "MLOAD",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "DUP1",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "SWAP2",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "SUB",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "SWAP1",
"source": 0
},
{
"begin": 777,
"end": 848,
"name": "RETURN",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "tag",
"source": 0,
"value": "14"
},
{
"begin": 198,
"end": 216,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SLOAD",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 198,
"end": 216,
"name": "EXP",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "SWAP1",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DIV",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 198,
"end": 216,
"name": "AND",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "DUP2",
"source": 0
},
{
"begin": 198,
"end": 216,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 474,
"end": 502,
"name": "tag",
"source": 0,
"value": "18"
},
{
"begin": 474,
"end": 502,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "8"
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SLOAD",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 474,
"end": 502,
"name": "EXP",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "SWAP1",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DIV",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 474,
"end": 502,
"name": "AND",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "DUP2",
"source": 0
},
{
"begin": 474,
"end": 502,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 855,
"end": 893,
"name": "tag",
"source": 0,
"value": "22"
},
{
"begin": 855,
"end": 893,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "E"
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 855,
"end": 893,
"name": "SWAP1",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SLOAD",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SWAP1",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 855,
"end": 893,
"name": "EXP",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "SWAP1",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "DIV",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 855,
"end": 893,
"name": "AND",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "DUP2",
"source": 0
},
{
"begin": 855,
"end": 893,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 1183,
"end": 1267,
"name": "tag",
"source": 0,
"value": "26"
},
{
"begin": 1183,
"end": 1267,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1228,
"end": 1235,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1254,
"end": 1259,
"name": "PUSH",
"source": 0,
"value": "E"
},
{
"begin": 1254,
"end": 1259,
"name": "PUSH",
"source": 0,
"value": "14"
},
{
"begin": 1254,
"end": 1259,
"name": "SWAP1",
"source": 0
},
{
"begin": 1254,
"end": 1259,
"name": "SLOAD",
"source": 0
},
{
"begin": 1254,
"end": 1259,
"name": "SWAP1",
"source": 0
},
{
"begin": 1254,
"end": 1259,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 1254,
"end": 1259,
"name": "EXP",
"source": 0
},
{
"begin": 1254,
"end": 1259,
"name": "SWAP1",
"source": 0
},
{
"begin": 1254,
"end": 1259,
"name": "DIV",
"source": 0
},
{
"begin": 1254,
"end": 1259,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 1254,
"end": 1259,
"name": "AND",
"source": 0
},
{
"begin": 1247,
"end": 1259,
"name": "SWAP1",
"source": 0
},
{
"begin": 1247,
"end": 1259,
"name": "POP",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "SWAP1",
"source": 0
},
{
"begin": 1183,
"end": 1267,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 1112,
"end": 1175,
"name": "tag",
"source": 0,
"value": "30"
},
{
"begin": 1112,
"end": 1175,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1156,
"end": 1167,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 1148,
"end": 1153,
"name": "PUSH",
"source": 0,
"value": "E"
},
{
"begin": 1148,
"end": 1153,
"name": "PUSH",
"source": 0,
"value": "14"
},
{
"begin": 1148,
"end": 1167,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 1148,
"end": 1167,
"name": "EXP",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "DUP2",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "SLOAD",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "DUP2",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "PUSH",
"source": 0,
"value": "FF"
},
{
"begin": 1148,
"end": 1167,
"name": "MUL",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "NOT",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "AND",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "SWAP1",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "DUP4",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 1148,
"end": 1167,
"name": "DUP2",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "GT",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "ISZERO",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "PUSH [tag]",
"source": 0,
"value": "46"
},
{
"begin": 1148,
"end": 1167,
"name": "JUMPI",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "PUSH [tag]",
"source": 0,
"value": "47"
},
{
"begin": 1148,
"end": 1167,
"name": "PUSH [tag]",
"source": 0,
"value": "48"
},
{
"begin": 1148,
"end": 1167,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 1148,
"end": 1167,
"name": "tag",
"source": 0,
"value": "47"
},
{
"begin": 1148,
"end": 1167,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "tag",
"source": 0,
"value": "46"
},
{
"begin": 1148,
"end": 1167,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "MUL",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "OR",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "SWAP1",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "SSTORE",
"source": 0
},
{
"begin": 1148,
"end": 1167,
"name": "POP",
"source": 0
},
{
"begin": 1112,
"end": 1175,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "32"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "6"
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "49"
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "50"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "49"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DIV",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MUL",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "51"
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "50"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "51"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ISZERO",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "52"
},
{
"begin": 337,
"end": 379,
"name": "JUMPI",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 337,
"end": 379,
"name": "LT",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "53"
},
{
"begin": 337,
"end": 379,
"name": "JUMPI",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP4",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DIV",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MUL",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP4",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH [tag]",
"source": 0,
"value": "52"
},
{
"begin": 337,
"end": 379,
"name": "JUMP",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "53"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP3",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 337,
"end": 379,
"name": "KECCAK256",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "tag",
"source": 0,
"value": "54"
},
{
"begin": 337,
"end": 379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SLOAD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP2",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "MSTORE",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "SWAP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 337,
"end": 379,
"name": "ADD",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP1",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "DUP4",
"source": 0
},
{
"begin": 337,
"end": 379,
"name": "GT",
"source": 0
},
{
"begin": 337
View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment