Created
October 30, 2023 13:42
-
-
Save tebayoso/a144a5ca0200a858c3edf367b213374a 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.18+commit.87f61d96.js&optimize=false&runs=200&gist=
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: GPL-3.0 | |
pragma solidity >=0.4.22 <0.9.0; | |
library TestsAccounts { | |
function getAccount(uint index) pure public returns (address) { | |
return address(0); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: GPL-3.0 | |
pragma solidity >=0.4.22 <0.9.0; | |
library Assert { | |
event AssertionEvent( | |
bool passed, | |
string message, | |
string methodName | |
); | |
event AssertionEventUint( | |
bool passed, | |
string message, | |
string methodName, | |
uint256 returned, | |
uint256 expected | |
); | |
event AssertionEventInt( | |
bool passed, | |
string message, | |
string methodName, | |
int256 returned, | |
int256 expected | |
); | |
event AssertionEventBool( | |
bool passed, | |
string message, | |
string methodName, | |
bool returned, | |
bool expected | |
); | |
event AssertionEventAddress( | |
bool passed, | |
string message, | |
string methodName, | |
address returned, | |
address expected | |
); | |
event AssertionEventBytes32( | |
bool passed, | |
string message, | |
string methodName, | |
bytes32 returned, | |
bytes32 expected | |
); | |
event AssertionEventString( | |
bool passed, | |
string message, | |
string methodName, | |
string returned, | |
string expected | |
); | |
event AssertionEventUintInt( | |
bool passed, | |
string message, | |
string methodName, | |
uint256 returned, | |
int256 expected | |
); | |
event AssertionEventIntUint( | |
bool passed, | |
string message, | |
string methodName, | |
int256 returned, | |
uint256 expected | |
); | |
function ok(bool a, string memory message) public returns (bool result) { | |
result = a; | |
emit AssertionEvent(result, message, "ok"); | |
} | |
function equal(uint256 a, uint256 b, string memory message) public returns (bool result) { | |
result = (a == b); | |
emit AssertionEventUint(result, message, "equal", a, b); | |
} | |
function equal(int256 a, int256 b, string memory message) public returns (bool result) { | |
result = (a == b); | |
emit AssertionEventInt(result, message, "equal", a, b); | |
} | |
function equal(bool a, bool b, string memory message) public returns (bool result) { | |
result = (a == b); | |
emit AssertionEventBool(result, message, "equal", a, b); | |
} | |
// TODO: only for certain versions of solc | |
//function equal(fixed a, fixed b, string message) public returns (bool result) { | |
// result = (a == b); | |
// emit AssertionEvent(result, message); | |
//} | |
// TODO: only for certain versions of solc | |
//function equal(ufixed a, ufixed b, string message) public returns (bool result) { | |
// result = (a == b); | |
// emit AssertionEvent(result, message); | |
//} | |
function equal(address a, address b, string memory message) public returns (bool result) { | |
result = (a == b); | |
emit AssertionEventAddress(result, message, "equal", a, b); | |
} | |
function equal(bytes32 a, bytes32 b, string memory message) public returns (bool result) { | |
result = (a == b); | |
emit AssertionEventBytes32(result, message, "equal", a, b); | |
} | |
function equal(string memory a, string memory b, string memory message) public returns (bool result) { | |
result = (keccak256(abi.encodePacked(a)) == keccak256(abi.encodePacked(b))); | |
emit AssertionEventString(result, message, "equal", a, b); | |
} | |
function notEqual(uint256 a, uint256 b, string memory message) public returns (bool result) { | |
result = (a != b); | |
emit AssertionEventUint(result, message, "notEqual", a, b); | |
} | |
function notEqual(int256 a, int256 b, string memory message) public returns (bool result) { | |
result = (a != b); | |
emit AssertionEventInt(result, message, "notEqual", a, b); | |
} | |
function notEqual(bool a, bool b, string memory message) public returns (bool result) { | |
result = (a != b); | |
emit AssertionEventBool(result, message, "notEqual", a, b); | |
} | |
// TODO: only for certain versions of solc | |
//function notEqual(fixed a, fixed b, string message) public returns (bool result) { | |
// result = (a != b); | |
// emit AssertionEvent(result, message); | |
//} | |
// TODO: only for certain versions of solc | |
//function notEqual(ufixed a, ufixed b, string message) public returns (bool result) { | |
// result = (a != b); | |
// emit AssertionEvent(result, message); | |
//} | |
function notEqual(address a, address b, string memory message) public returns (bool result) { | |
result = (a != b); | |
emit AssertionEventAddress(result, message, "notEqual", a, b); | |
} | |
function notEqual(bytes32 a, bytes32 b, string memory message) public returns (bool result) { | |
result = (a != b); | |
emit AssertionEventBytes32(result, message, "notEqual", a, b); | |
} | |
function notEqual(string memory a, string memory b, string memory message) public returns (bool result) { | |
result = (keccak256(abi.encodePacked(a)) != keccak256(abi.encodePacked(b))); | |
emit AssertionEventString(result, message, "notEqual", a, b); | |
} | |
/*----------------- Greater than --------------------*/ | |
function greaterThan(uint256 a, uint256 b, string memory message) public returns (bool result) { | |
result = (a > b); | |
emit AssertionEventUint(result, message, "greaterThan", a, b); | |
} | |
function greaterThan(int256 a, int256 b, string memory message) public returns (bool result) { | |
result = (a > b); | |
emit AssertionEventInt(result, message, "greaterThan", a, b); | |
} | |
// TODO: safely compare between uint and int | |
function greaterThan(uint256 a, int256 b, string memory message) public returns (bool result) { | |
if(b < int(0)) { | |
// int is negative uint "a" always greater | |
result = true; | |
} else { | |
result = (a > uint(b)); | |
} | |
emit AssertionEventUintInt(result, message, "greaterThan", a, b); | |
} | |
function greaterThan(int256 a, uint256 b, string memory message) public returns (bool result) { | |
if(a < int(0)) { | |
// int is negative uint "b" always greater | |
result = false; | |
} else { | |
result = (uint(a) > b); | |
} | |
emit AssertionEventIntUint(result, message, "greaterThan", a, b); | |
} | |
/*----------------- Lesser than --------------------*/ | |
function lesserThan(uint256 a, uint256 b, string memory message) public returns (bool result) { | |
result = (a < b); | |
emit AssertionEventUint(result, message, "lesserThan", a, b); | |
} | |
function lesserThan(int256 a, int256 b, string memory message) public returns (bool result) { | |
result = (a < b); | |
emit AssertionEventInt(result, message, "lesserThan", a, b); | |
} | |
// TODO: safely compare between uint and int | |
function lesserThan(uint256 a, int256 b, string memory message) public returns (bool result) { | |
if(b < int(0)) { | |
// int is negative int "b" always lesser | |
result = false; | |
} else { | |
result = (a < uint(b)); | |
} | |
emit AssertionEventUintInt(result, message, "lesserThan", a, b); | |
} | |
function lesserThan(int256 a, uint256 b, string memory message) public returns (bool result) { | |
if(a < int(0)) { | |
// int is negative int "a" always lesser | |
result = true; | |
} else { | |
result = (uint(a) < b); | |
} | |
emit AssertionEventIntUint(result, message, "lesserThan", a, b); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"overrides": [ | |
{ | |
"files": "*.sol", | |
"options": { | |
"printWidth": 80, | |
"tabWidth": 4, | |
"useTabs": false, | |
"singleQuote": false, | |
"bracketSpacing": false | |
} | |
}, | |
{ | |
"files": "*.yml", | |
"options": {} | |
}, | |
{ | |
"files": "*.yaml", | |
"options": {} | |
}, | |
{ | |
"files": "*.toml", | |
"options": {} | |
}, | |
{ | |
"files": "*.json", | |
"options": {} | |
}, | |
{ | |
"files": "*.js", | |
"options": {} | |
}, | |
{ | |
"files": "*.ts", | |
"options": {} | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"deploy": { | |
"VM:-": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"main:1": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"ropsten:3": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"rinkeby:4": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"kovan:42": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"goerli:5": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"Custom": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
} | |
}, | |
"data": { | |
"bytecode": { | |
"functionDebugData": { | |
"@_18": { | |
"entryPoint": null, | |
"id": 18, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"array_dataslot_t_string_storage": { | |
"entryPoint": 318, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_length_t_string_memory_ptr": { | |
"entryPoint": 160, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"clean_up_bytearray_end_slots_t_string_storage": { | |
"entryPoint": 639, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"cleanup_t_uint256": { | |
"entryPoint": 454, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"clear_storage_range_t_bytes1": { | |
"entryPoint": 600, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"convert_t_uint256_to_t_uint256": { | |
"entryPoint": 474, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { | |
"entryPoint": 794, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"divide_by_32_ceil": { | |
"entryPoint": 339, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"extract_byte_array_length": { | |
"entryPoint": 265, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"extract_used_part_and_set_length_of_short_byte_array": { | |
"entryPoint": 764, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"identity": { | |
"entryPoint": 464, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"mask_bytes_dynamic": { | |
"entryPoint": 732, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"panic_error_0x22": { | |
"entryPoint": 218, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"panic_error_0x41": { | |
"entryPoint": 171, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"prepare_store_t_uint256": { | |
"entryPoint": 514, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"shift_left_dynamic": { | |
"entryPoint": 355, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"shift_right_unsigned_dynamic": { | |
"entryPoint": 719, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"storage_set_to_zero_t_uint256": { | |
"entryPoint": 572, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"update_byte_slice_dynamic32": { | |
"entryPoint": 368, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"update_storage_value_t_uint256_to_t_uint256": { | |
"entryPoint": 524, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"zero_value_for_split_t_uint256": { | |
"entryPoint": 567, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
} | |
}, | |
"generatedSources": [ | |
{ | |
"ast": { | |
"nodeType": "YulBlock", | |
"src": "0:5231:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "66:40:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "77:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "93:5:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "87:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "87:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "77:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "49:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "59:6:1", | |
"type": "" | |
} | |
], | |
"src": "7:99:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "140:152:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "157:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "160:77:1", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "150:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "150:88:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "150:88:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "254:1:1", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "257:4:1", | |
"type": "", | |
"value": "0x41" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "247:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "247:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "247:15:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "278:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "281:4:1", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "271:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "271:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "271:15:1" | |
} | |
] | |
}, | |
"name": "panic_error_0x41", | |
"nodeType": "YulFunctionDefinition", | |
"src": "112:180:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "326:152:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "343:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "346:77:1", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "336:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "336:88:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "336:88:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "440:1:1", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "443:4:1", | |
"type": "", | |
"value": "0x22" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "433:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "433:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "433:15:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "464:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "467:4:1", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "457:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "457:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "457:15:1" | |
} | |
] | |
}, | |
"name": "panic_error_0x22", | |
"nodeType": "YulFunctionDefinition", | |
"src": "298:180:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "535:269:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "545:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "559:4:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "565:1:1", | |
"type": "", | |
"value": "2" | |
} | |
], | |
"functionName": { | |
"name": "div", | |
"nodeType": "YulIdentifier", | |
"src": "555:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "555:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "545:6:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "576:38:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "606:4:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "612:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "602:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "602:12:1" | |
}, | |
"variables": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulTypedName", | |
"src": "580:18:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "653:51:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "667:27:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "681:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "689:4:1", | |
"type": "", | |
"value": "0x7f" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "677:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "677:17:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "667:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulIdentifier", | |
"src": "633:18:1" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "626:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "626:26:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "623:81:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "756:42:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x22", | |
"nodeType": "YulIdentifier", | |
"src": "770:16:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "770:18:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "770:18:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulIdentifier", | |
"src": "720:18:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "743:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "751:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "740:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "740:14:1" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "717:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "717:38:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "714:84:1" | |
} | |
] | |
}, | |
"name": "extract_byte_array_length", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "519:4:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "528:6:1", | |
"type": "" | |
} | |
], | |
"src": "484:320:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "864:87:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "874:11:1", | |
"value": { | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "882:3:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "874:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "902:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "905:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "895:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "895:14:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "895:14:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "918:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "936:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "939:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "keccak256", | |
"nodeType": "YulIdentifier", | |
"src": "926:9:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "926:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "918:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "ptr", | |
"nodeType": "YulTypedName", | |
"src": "851:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "859:4:1", | |
"type": "" | |
} | |
], | |
"src": "810:141:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1001:49:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1011:33:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1029:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1036:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1025:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1025:14:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1041:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "div", | |
"nodeType": "YulIdentifier", | |
"src": "1021:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1021:23:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "1011:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "984:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "994:6:1", | |
"type": "" | |
} | |
], | |
"src": "957:93:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1109:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1119:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulIdentifier", | |
"src": "1144:4:1" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1150:5:1" | |
} | |
], | |
"functionName": { | |
"name": "shl", | |
"nodeType": "YulIdentifier", | |
"src": "1140:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1140:16:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulIdentifier", | |
"src": "1119:8:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "shift_left_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulTypedName", | |
"src": "1084:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1090:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulTypedName", | |
"src": "1100:8:1", | |
"type": "" | |
} | |
], | |
"src": "1056:107:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1245:317:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1255:35:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBytes", | |
"nodeType": "YulIdentifier", | |
"src": "1276:10:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1288:1:1", | |
"type": "", | |
"value": "8" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "1272:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1272:18:1" | |
}, | |
"variables": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulTypedName", | |
"src": "1259:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1299:109:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulIdentifier", | |
"src": "1330:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1341:66:1", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "shift_left_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "1311:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1311:97:1" | |
}, | |
"variables": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulTypedName", | |
"src": "1303:4:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1417:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulIdentifier", | |
"src": "1448:9:1" | |
}, | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "1459:8:1" | |
} | |
], | |
"functionName": { | |
"name": "shift_left_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "1429:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1429:39:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "1417:8:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1477:30:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1490:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "1501:4:1" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "1497:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1497:9:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "1486:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1486:21:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1477:5:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1516:40:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1529:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "1540:8:1" | |
}, | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "1550:4:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "1536:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1536:19:1" | |
} | |
], | |
"functionName": { | |
"name": "or", | |
"nodeType": "YulIdentifier", | |
"src": "1526:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1526:30:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "1516:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "update_byte_slice_dynamic32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1206:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "shiftBytes", | |
"nodeType": "YulTypedName", | |
"src": "1213:10:1", | |
"type": "" | |
}, | |
{ | |
"name": "toInsert", | |
"nodeType": "YulTypedName", | |
"src": "1225:8:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "1238:6:1", | |
"type": "" | |
} | |
], | |
"src": "1169:393:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1613:32:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1623:16:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1634:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1623:7:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1595:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1605:7:1", | |
"type": "" | |
} | |
], | |
"src": "1568:77:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1683:28:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1693:12:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1700:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "1693:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "identity", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1669:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "1679:3:1", | |
"type": "" | |
} | |
], | |
"src": "1651:60:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1777:82:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1787:66:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1845:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "1827:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1827:24:1" | |
} | |
], | |
"functionName": { | |
"name": "identity", | |
"nodeType": "YulIdentifier", | |
"src": "1818:8:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1818:34:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "1800:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1800:53:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "converted", | |
"nodeType": "YulIdentifier", | |
"src": "1787:9:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "convert_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1757:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "converted", | |
"nodeType": "YulTypedName", | |
"src": "1767:9:1", | |
"type": "" | |
} | |
], | |
"src": "1717:142:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1912:28:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1922:12:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1929:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "1922:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "prepare_store_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1898:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "1908:3:1", | |
"type": "" | |
} | |
], | |
"src": "1865:75:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2022:193:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2032:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value_0", | |
"nodeType": "YulIdentifier", | |
"src": "2087:7:1" | |
} | |
], | |
"functionName": { | |
"name": "convert_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2056:30:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2056:39:1" | |
}, | |
"variables": [ | |
{ | |
"name": "convertedValue_0", | |
"nodeType": "YulTypedName", | |
"src": "2036:16:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "2111:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "2151:4:1" | |
} | |
], | |
"functionName": { | |
"name": "sload", | |
"nodeType": "YulIdentifier", | |
"src": "2145:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2145:11:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "2158:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "convertedValue_0", | |
"nodeType": "YulIdentifier", | |
"src": "2190:16:1" | |
} | |
], | |
"functionName": { | |
"name": "prepare_store_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2166:23:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2166:41:1" | |
} | |
], | |
"functionName": { | |
"name": "update_byte_slice_dynamic32", | |
"nodeType": "YulIdentifier", | |
"src": "2117:27:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2117:91:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "2104:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2104:105:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2104:105:1" | |
} | |
] | |
}, | |
"name": "update_storage_value_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "1999:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2005:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "value_0", | |
"nodeType": "YulTypedName", | |
"src": "2013:7:1", | |
"type": "" | |
} | |
], | |
"src": "1946:269:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2270:24:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2280:8:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2287:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "2280:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "zero_value_for_split_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "2266:3:1", | |
"type": "" | |
} | |
], | |
"src": "2221:73:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2353:136:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2363:46:1", | |
"value": { | |
"arguments": [], | |
"functionName": { | |
"name": "zero_value_for_split_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2377:30:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2377:32:1" | |
}, | |
"variables": [ | |
{ | |
"name": "zero_0", | |
"nodeType": "YulTypedName", | |
"src": "2367:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "2462:4:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "2468:6:1" | |
}, | |
{ | |
"name": "zero_0", | |
"nodeType": "YulIdentifier", | |
"src": "2476:6:1" | |
} | |
], | |
"functionName": { | |
"name": "update_storage_value_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2418:43:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2418:65:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2418:65:1" | |
} | |
] | |
}, | |
"name": "storage_set_to_zero_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "2339:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2345:6:1", | |
"type": "" | |
} | |
], | |
"src": "2300:189:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2545:136:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2612:63:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "2656:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2663:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "storage_set_to_zero_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2626:29:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2626:39:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2626:39:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "2565:5:1" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "2572:3:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "2562:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2562:14:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "2577:26:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2579:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "2592:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2599:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2588:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2588:13:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "2579:5:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "2559:2:1", | |
"statements": [] | |
}, | |
"src": "2555:120:1" | |
} | |
] | |
}, | |
"name": "clear_storage_range_t_bytes1", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "start", | |
"nodeType": "YulTypedName", | |
"src": "2533:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "2540:3:1", | |
"type": "" | |
} | |
], | |
"src": "2495:186:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2766:464:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2792:431:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2806:54:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "array", | |
"nodeType": "YulIdentifier", | |
"src": "2854:5:1" | |
} | |
], | |
"functionName": { | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "2822:31:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2822:38:1" | |
}, | |
"variables": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulTypedName", | |
"src": "2810:8:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2873:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "2896:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "startIndex", | |
"nodeType": "YulIdentifier", | |
"src": "2924:10:1" | |
} | |
], | |
"functionName": { | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulIdentifier", | |
"src": "2906:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2906:29:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2892:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2892:44:1" | |
}, | |
"variables": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulTypedName", | |
"src": "2877:11:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3093:27:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3095:23:1", | |
"value": { | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "3110:8:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulIdentifier", | |
"src": "3095:11:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "startIndex", | |
"nodeType": "YulIdentifier", | |
"src": "3077:10:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3089:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "3074:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3074:18:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "3071:49:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulIdentifier", | |
"src": "3162:11:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "3179:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "3207:3:1" | |
} | |
], | |
"functionName": { | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulIdentifier", | |
"src": "3189:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3189:22:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3175:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3175:37:1" | |
} | |
], | |
"functionName": { | |
"name": "clear_storage_range_t_bytes1", | |
"nodeType": "YulIdentifier", | |
"src": "3133:28:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3133:80:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3133:80:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "2783:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2788:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "2780:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2780:11:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "2777:446:1" | |
} | |
] | |
}, | |
"name": "clean_up_bytearray_end_slots_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "array", | |
"nodeType": "YulTypedName", | |
"src": "2742:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "2749:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "startIndex", | |
"nodeType": "YulTypedName", | |
"src": "2754:10:1", | |
"type": "" | |
} | |
], | |
"src": "2687:543:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3299:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3309:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulIdentifier", | |
"src": "3334:4:1" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3340:5:1" | |
} | |
], | |
"functionName": { | |
"name": "shr", | |
"nodeType": "YulIdentifier", | |
"src": "3330:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3330:16:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulIdentifier", | |
"src": "3309:8:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "shift_right_unsigned_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulTypedName", | |
"src": "3274:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3280:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulTypedName", | |
"src": "3290:8:1", | |
"type": "" | |
} | |
], | |
"src": "3236:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3410:118:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3420:68:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3469:1:1", | |
"type": "", | |
"value": "8" | |
}, | |
{ | |
"name": "bytes", | |
"nodeType": "YulIdentifier", | |
"src": "3472:5:1" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "3465:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3465:13:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3484:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "3480:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3480:6:1" | |
} | |
], | |
"functionName": { | |
"name": "shift_right_unsigned_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "3436:28:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3436:51:1" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "3432:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3432:56:1" | |
}, | |
"variables": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulTypedName", | |
"src": "3424:4:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3497:25:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "3511:4:1" | |
}, | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "3517:4:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "3507:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3507:15:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "3497:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "3387:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "bytes", | |
"nodeType": "YulTypedName", | |
"src": "3393:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "3403:6:1", | |
"type": "" | |
} | |
], | |
"src": "3359:169:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3614:214:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3747:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "3774:4:1" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "3780:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "3755:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3755:29:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "3747:4:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3793:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "3804:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3814:1:1", | |
"type": "", | |
"value": "2" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "3817:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "3810:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3810:11:1" | |
} | |
], | |
"functionName": { | |
"name": "or", | |
"nodeType": "YulIdentifier", | |
"src": "3801:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3801:21:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "used", | |
"nodeType": "YulIdentifier", | |
"src": "3793:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "extract_used_part_and_set_length_of_short_byte_array", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "3595:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "3601:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "used", | |
"nodeType": "YulTypedName", | |
"src": "3609:4:1", | |
"type": "" | |
} | |
], | |
"src": "3533:295:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3925:1303:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3936:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "3983:3:1" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "3950:32:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3950:37:1" | |
}, | |
"variables": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulTypedName", | |
"src": "3940:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4072:22:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x41", | |
"nodeType": "YulIdentifier", | |
"src": "4074:16:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4074:18:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4074:18:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4044:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4052:18:1", | |
"type": "", | |
"value": "0xffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "4041:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4041:30:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "4038:56:1" | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4104:52:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "4150:4:1" | |
} | |
], | |
"functionName": { | |
"name": "sload", | |
"nodeType": "YulIdentifier", | |
"src": "4144:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4144:11:1" | |
} | |
], | |
"functionName": { | |
"name": "extract_byte_array_length", | |
"nodeType": "YulIdentifier", | |
"src": "4118:25:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4118:38:1" | |
}, | |
"variables": [ | |
{ | |
"name": "oldLen", | |
"nodeType": "YulTypedName", | |
"src": "4108:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "4249:4:1" | |
}, | |
{ | |
"name": "oldLen", | |
"nodeType": "YulIdentifier", | |
"src": "4255:6:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4263:6:1" | |
} | |
], | |
"functionName": { | |
"name": "clean_up_bytearray_end_slots_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "4203:45:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4203:67:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4203:67:1" | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4280:18:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4297:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulTypedName", | |
"src": "4284:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4308:17:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4321:4:1", | |
"type": "", | |
"value": "0x20" | |
}, | |
"variableNames": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4308:9:1" | |
} | |
] | |
}, | |
{ | |
"cases": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4372:611:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4386:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4405:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4417:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "4413:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4413:9:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "4401:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4401:22:1" | |
}, | |
"variables": [ | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulTypedName", | |
"src": "4390:7:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4437:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "4483:4:1" | |
} | |
], | |
"functionName": { | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "4451:31:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4451:37:1" | |
}, | |
"variables": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulTypedName", | |
"src": "4441:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4501:10:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4510:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "i", | |
"nodeType": "YulTypedName", | |
"src": "4505:1:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4569:163:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4594:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "4612:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4617:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4608:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4608:19:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "4602:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4602:26:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "4587:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4587:42:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4587:42:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4646:24:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4660:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4668:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4656:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4656:14:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4646:6:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4687:31:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4704:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4715:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4700:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4700:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4687:9:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "4535:1:1" | |
}, | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulIdentifier", | |
"src": "4538:7:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "4532:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4532:14:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "4547:21:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4549:17:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "4558:1:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4561:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4554:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4554:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "4549:1:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "4528:3:1", | |
"statements": [] | |
}, | |
"src": "4524:208:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4768:156:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4786:43:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "4813:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4818:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4809:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4809:19:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "4803:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4803:26:1" | |
}, | |
"variables": [ | |
{ | |
"name": "lastValue", | |
"nodeType": "YulTypedName", | |
"src": "4790:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4853:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "lastValue", | |
"nodeType": "YulIdentifier", | |
"src": "4880:9:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4895:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4903:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "4891:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4891:17:1" | |
} | |
], | |
"functionName": { | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "4861:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4861:48:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "4846:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4846:64:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4846:64:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulIdentifier", | |
"src": "4751:7:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4760:6:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "4748:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4748:19:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "4745:179:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "4944:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4958:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4966:1:1", | |
"type": "", | |
"value": "2" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "4954:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4954:14:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4970:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4950:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4950:22:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "4937:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4937:36:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4937:36:1" | |
} | |
] | |
}, | |
"nodeType": "YulCase", | |
"src": "4365:618:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4370:1:1", | |
"type": "", | |
"value": "1" | |
} | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5000:222:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "5014:14:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5027:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "5018:5:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5051:67:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5069:35:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "5088:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "5093:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5084:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5084:19:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "5078:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5078:26:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "5069:5:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "5044:6:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "5041:77:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "5138:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "5197:5:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "5204:6:1" | |
} | |
], | |
"functionName": { | |
"name": "extract_used_part_and_set_length_of_short_byte_array", | |
"nodeType": "YulIdentifier", | |
"src": "5144:52:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5144:67:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "5131:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5131:81:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5131:81:1" | |
} | |
] | |
}, | |
"nodeType": "YulCase", | |
"src": "4992:230:1", | |
"value": "default" | |
} | |
], | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4345:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4353:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "4342:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4342:14:1" | |
}, | |
"nodeType": "YulSwitch", | |
"src": "4335:887:1" | |
} | |
] | |
}, | |
"name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "3914:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "src", | |
"nodeType": "YulTypedName", | |
"src": "3920:3:1", | |
"type": "" | |
} | |
], | |
"src": "3833:1395:1" | |
} | |
] | |
}, | |
"contents": "{\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\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 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 array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src) {\n\n let newLen := array_length_t_string_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", | |
"id": 1, | |
"language": "Yul", | |
"name": "#utility.yul" | |
} | |
], | |
"linkReferences": {}, | |
"object": "60806040523480156200001157600080fd5b506040518060400160405280600b81526020017f48656c6c6f20576f726c64000000000000000000000000000000000000000000815250600090816200005891906200031a565b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000401565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200012257607f821691505b602082108103620001385762000137620000da565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620001a27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000163565b620001ae868362000163565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620001fb620001f5620001ef84620001c6565b620001d0565b620001c6565b9050919050565b6000819050919050565b6200021783620001da565b6200022f620002268262000202565b84845462000170565b825550505050565b600090565b6200024662000237565b620002538184846200020c565b505050565b5b818110156200027b576200026f6000826200023c565b60018101905062000259565b5050565b601f821115620002ca5762000294816200013e565b6200029f8462000153565b81016020851015620002af578190505b620002c7620002be8562000153565b83018262000258565b50505b505050565b600082821c905092915050565b6000620002ef60001984600802620002cf565b1980831691505092915050565b60006200030a8383620002dc565b9150826002028217905092915050565b6200032582620000a0565b67ffffffffffffffff811115620003415762000340620000ab565b5b6200034d825462000109565b6200035a8282856200027f565b600060209050601f8311600181146200039257600084156200037d578287015190505b620003898582620002fc565b865550620003f9565b601f198416620003a2866200013e565b60005b82811015620003cc57848901518255600182019150602085019450602081019050620003a5565b86831015620003ec5784890151620003e8601f891682620002dc565b8355505b6001600288020188555050505b505050505050565b6108dc80620004116000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3a1f9d146100515780638da5cb5b1461006d578063c605f76c1461008b578063f2fde38b146100a9575b600080fd5b61006b60048036038101906100669190610366565b6100c5565b005b61007561016b565b60405161008291906103f4565b60405180910390f35b610093610191565b6040516100a0919061049f565b60405180910390f35b6100c360048036038101906100be91906104ed565b610223565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610155576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014c90610566565b60405180910390fd5b8181600091826101669291906107d6565b505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060600080546101a0906105ef565b80601f01602080910402602001604051908101604052809291908181526020018280546101cc906105ef565b80156102195780601f106101ee57610100808354040283529160200191610219565b820191906000526020600020905b8154815290600101906020018083116101fc57829003601f168201915b5050505050905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102aa90610566565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f84011261032657610325610301565b5b8235905067ffffffffffffffff81111561034357610342610306565b5b60208301915083600182028301111561035f5761035e61030b565b5b9250929050565b6000806020838503121561037d5761037c6102f7565b5b600083013567ffffffffffffffff81111561039b5761039a6102fc565b5b6103a785828601610310565b92509250509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103de826103b3565b9050919050565b6103ee816103d3565b82525050565b600060208201905061040960008301846103e5565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561044957808201518184015260208101905061042e565b60008484015250505050565b6000601f19601f8301169050919050565b60006104718261040f565b61047b818561041a565b935061048b81856020860161042b565b61049481610455565b840191505092915050565b600060208201905081810360008301526104b98184610466565b905092915050565b6104ca816103d3565b81146104d557600080fd5b50565b6000813590506104e7816104c1565b92915050565b600060208284031215610503576105026102f7565b5b6000610511848285016104d8565b91505092915050565b7f43616c6c6572206973206e6f7420746865206f776e6572000000000000000000600082015250565b600061055060178361041a565b915061055b8261051a565b602082019050919050565b6000602082019050818103600083015261057f81610543565b9050919050565b600082905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061060757607f821691505b60208210810361061a576106196105c0565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026106827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610645565b61068c8683610645565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006106d36106ce6106c9846106a4565b6106ae565b6106a4565b9050919050565b6000819050919050565b6106ed836106b8565b6107016106f9826106da565b848454610652565b825550505050565b600090565b610716610709565b6107218184846106e4565b505050565b5b818110156107455761073a60008261070e565b600181019050610727565b5050565b601f82111561078a5761075b81610620565b61076484610635565b81016020851015610773578190505b61078761077f85610635565b830182610726565b50505b505050565b600082821c905092915050565b60006107ad6000198460080261078f565b1980831691505092915050565b60006107c6838361079c565b9150826002028217905092915050565b6107e08383610586565b67ffffffffffffffff8111156107f9576107f8610591565b5b61080382546105ef565b61080e828285610749565b6000601f83116001811461083d576000841561082b578287013590505b61083585826107ba565b86555061089d565b601f19841661084b86610620565b60005b828110156108735784890135825560018201915060208501945060208101905061084e565b86831015610890578489013561088c601f89168261079c565b8355505b6001600288020188555050505b5050505050505056fea264697066735822122017505db29d005a0ca7290a01a22e0cf9abe8543ef818189ad2148cbb95966fc064736f6c63430008120033", | |
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xB DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x48656C6C6F20576F726C64000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x0 SWAP1 DUP2 PUSH3 0x58 SWAP2 SWAP1 PUSH3 0x31A JUMP JUMPDEST POP CALLER PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x401 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 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 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH3 0x122 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x138 JUMPI PUSH3 0x137 PUSH3 0xDA JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH3 0x1A2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH3 0x163 JUMP JUMPDEST PUSH3 0x1AE DUP7 DUP4 PUSH3 0x163 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x1FB PUSH3 0x1F5 PUSH3 0x1EF DUP5 PUSH3 0x1C6 JUMP JUMPDEST PUSH3 0x1D0 JUMP JUMPDEST PUSH3 0x1C6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH3 0x217 DUP4 PUSH3 0x1DA JUMP JUMPDEST PUSH3 0x22F PUSH3 0x226 DUP3 PUSH3 0x202 JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH3 0x170 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH3 0x246 PUSH3 0x237 JUMP JUMPDEST PUSH3 0x253 DUP2 DUP5 DUP5 PUSH3 0x20C JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x27B JUMPI PUSH3 0x26F PUSH1 0x0 DUP3 PUSH3 0x23C JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH3 0x259 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x2CA JUMPI PUSH3 0x294 DUP2 PUSH3 0x13E JUMP JUMPDEST PUSH3 0x29F DUP5 PUSH3 0x153 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH3 0x2AF JUMPI DUP2 SWAP1 POP JUMPDEST PUSH3 0x2C7 PUSH3 0x2BE DUP6 PUSH3 0x153 JUMP JUMPDEST DUP4 ADD DUP3 PUSH3 0x258 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x2EF PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH3 0x2CF JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x30A DUP4 DUP4 PUSH3 0x2DC JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH3 0x325 DUP3 PUSH3 0xA0 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH3 0x341 JUMPI PUSH3 0x340 PUSH3 0xAB JUMP JUMPDEST JUMPDEST PUSH3 0x34D DUP3 SLOAD PUSH3 0x109 JUMP JUMPDEST PUSH3 0x35A DUP3 DUP3 DUP6 PUSH3 0x27F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x392 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x37D JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH3 0x389 DUP6 DUP3 PUSH3 0x2FC JUMP JUMPDEST DUP7 SSTORE POP PUSH3 0x3F9 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH3 0x3A2 DUP7 PUSH3 0x13E JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x3CC JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH3 0x3A5 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH3 0x3EC JUMPI DUP5 DUP10 ADD MLOAD PUSH3 0x3E8 PUSH1 0x1F DUP10 AND DUP3 PUSH3 0x2DC JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x8DC DUP1 PUSH3 0x411 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 0x5D3A1F9D EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x6D JUMPI DUP1 PUSH4 0xC605F76C EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xA9 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x366 JUMP JUMPDEST PUSH2 0xC5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x75 PUSH2 0x16B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x82 SWAP2 SWAP1 PUSH2 0x3F4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x93 PUSH2 0x191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA0 SWAP2 SWAP1 PUSH2 0x49F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xBE SWAP2 SWAP1 PUSH2 0x4ED JUMP JUMPDEST PUSH2 0x223 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x155 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14C SWAP1 PUSH2 0x566 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 DUP2 PUSH1 0x0 SWAP2 DUP3 PUSH2 0x166 SWAP3 SWAP2 SWAP1 PUSH2 0x7D6 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x1A0 SWAP1 PUSH2 0x5EF 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 0x1CC SWAP1 PUSH2 0x5EF JUMP JUMPDEST DUP1 ISZERO PUSH2 0x219 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x219 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 0x1FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2B3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2AA SWAP1 PUSH2 0x566 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x326 JUMPI PUSH2 0x325 PUSH2 0x301 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x343 JUMPI PUSH2 0x342 PUSH2 0x306 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x35F JUMPI PUSH2 0x35E PUSH2 0x30B JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x37D JUMPI PUSH2 0x37C PUSH2 0x2F7 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x39B JUMPI PUSH2 0x39A PUSH2 0x2FC JUMP JUMPDEST JUMPDEST PUSH2 0x3A7 DUP6 DUP3 DUP7 ADD PUSH2 0x310 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3DE DUP3 PUSH2 0x3B3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3EE DUP2 PUSH2 0x3D3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x409 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3E5 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 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x449 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x42E JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x471 DUP3 PUSH2 0x40F JUMP JUMPDEST PUSH2 0x47B DUP2 DUP6 PUSH2 0x41A JUMP JUMPDEST SWAP4 POP PUSH2 0x48B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x42B JUMP JUMPDEST PUSH2 0x494 DUP2 PUSH2 0x455 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4B9 DUP2 DUP5 PUSH2 0x466 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4CA DUP2 PUSH2 0x3D3 JUMP JUMPDEST DUP2 EQ PUSH2 0x4D5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4E7 DUP2 PUSH2 0x4C1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x503 JUMPI PUSH2 0x502 PUSH2 0x2F7 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x511 DUP5 DUP3 DUP6 ADD PUSH2 0x4D8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F7420746865206F776E6572000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x550 PUSH1 0x17 DUP4 PUSH2 0x41A JUMP JUMPDEST SWAP2 POP PUSH2 0x55B DUP3 PUSH2 0x51A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x57F DUP2 PUSH2 0x543 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 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 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x607 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x61A JUMPI PUSH2 0x619 PUSH2 0x5C0 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x682 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x645 JUMP JUMPDEST PUSH2 0x68C DUP7 DUP4 PUSH2 0x645 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6D3 PUSH2 0x6CE PUSH2 0x6C9 DUP5 PUSH2 0x6A4 JUMP JUMPDEST PUSH2 0x6AE JUMP JUMPDEST PUSH2 0x6A4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6ED DUP4 PUSH2 0x6B8 JUMP JUMPDEST PUSH2 0x701 PUSH2 0x6F9 DUP3 PUSH2 0x6DA JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x652 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x716 PUSH2 0x709 JUMP JUMPDEST PUSH2 0x721 DUP2 DUP5 DUP5 PUSH2 0x6E4 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x745 JUMPI PUSH2 0x73A PUSH1 0x0 DUP3 PUSH2 0x70E JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x727 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x78A JUMPI PUSH2 0x75B DUP2 PUSH2 0x620 JUMP JUMPDEST PUSH2 0x764 DUP5 PUSH2 0x635 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x773 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x787 PUSH2 0x77F DUP6 PUSH2 0x635 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x726 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AD PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x78F JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7C6 DUP4 DUP4 PUSH2 0x79C JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x7E0 DUP4 DUP4 PUSH2 0x586 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7F9 JUMPI PUSH2 0x7F8 PUSH2 0x591 JUMP JUMPDEST JUMPDEST PUSH2 0x803 DUP3 SLOAD PUSH2 0x5EF JUMP JUMPDEST PUSH2 0x80E DUP3 DUP3 DUP6 PUSH2 0x749 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x83D JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x82B JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x835 DUP6 DUP3 PUSH2 0x7BA JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x89D JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x84B DUP7 PUSH2 0x620 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x873 JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x84E JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x890 JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x88C PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x79C JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 OR POP 0x5D 0xB2 SWAP14 STOP GAS 0xC 0xA7 0x29 EXP ADD LOG2 0x2E 0xC 0xF9 0xAB 0xE8 SLOAD RETURNDATACOPY 0xF8 XOR XOR SWAP11 0xD2 EQ DUP13 0xBB SWAP6 SWAP7 PUSH16 0xC064736F6C6343000812003300000000 ", | |
"sourceMap": "69:565:0:-:0;;;149:79;;;;;;;;;;173:20;;;;;;;;;;;;;;;;;:4;:20;;;;;;:::i;:::-;;211:10;203:5;;:18;;;;;;;;;;;;;;;;;;69:565;;7:99:1;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:180::-;160:77;157:1;150:88;257:4;254:1;247:15;281:4;278:1;271:15;298:180;346:77;343:1;336:88;443:4;440:1;433:15;467:4;464:1;457:15;484:320;528:6;565:1;559:4;555:12;545:22;;612:1;606:4;602:12;633:18;623:81;;689:4;681:6;677:17;667:27;;623:81;751:2;743:6;740:14;720:18;717:38;714:84;;770:18;;:::i;:::-;714:84;535:269;484:320;;;:::o;810:141::-;859:4;882:3;874:11;;905:3;902:1;895:14;939:4;936:1;926:18;918:26;;810:141;;;:::o;957:93::-;994:6;1041:2;1036;1029:5;1025:14;1021:23;1011:33;;957:93;;;:::o;1056:107::-;1100:8;1150:5;1144:4;1140:16;1119:37;;1056:107;;;;:::o;1169:393::-;1238:6;1288:1;1276:10;1272:18;1311:97;1341:66;1330:9;1311:97;:::i;:::-;1429:39;1459:8;1448:9;1429:39;:::i;:::-;1417:51;;1501:4;1497:9;1490:5;1486:21;1477:30;;1550:4;1540:8;1536:19;1529:5;1526:30;1516:40;;1245:317;;1169:393;;;;;:::o;1568:77::-;1605:7;1634:5;1623:16;;1568:77;;;:::o;1651:60::-;1679:3;1700:5;1693:12;;1651:60;;;:::o;1717:142::-;1767:9;1800:53;1818:34;1827:24;1845:5;1827:24;:::i;:::-;1818:34;:::i;:::-;1800:53;:::i;:::-;1787:66;;1717:142;;;:::o;1865:75::-;1908:3;1929:5;1922:12;;1865:75;;;:::o;1946:269::-;2056:39;2087:7;2056:39;:::i;:::-;2117:91;2166:41;2190:16;2166:41;:::i;:::-;2158:6;2151:4;2145:11;2117:91;:::i;:::-;2111:4;2104:105;2022:193;1946:269;;;:::o;2221:73::-;2266:3;2221:73;:::o;2300:189::-;2377:32;;:::i;:::-;2418:65;2476:6;2468;2462:4;2418:65;:::i;:::-;2353:136;2300:189;;:::o;2495:186::-;2555:120;2572:3;2565:5;2562:14;2555:120;;;2626:39;2663:1;2656:5;2626:39;:::i;:::-;2599:1;2592:5;2588:13;2579:22;;2555:120;;;2495:186;;:::o;2687:543::-;2788:2;2783:3;2780:11;2777:446;;;2822:38;2854:5;2822:38;:::i;:::-;2906:29;2924:10;2906:29;:::i;:::-;2896:8;2892:44;3089:2;3077:10;3074:18;3071:49;;;3110:8;3095:23;;3071:49;3133:80;3189:22;3207:3;3189:22;:::i;:::-;3179:8;3175:37;3162:11;3133:80;:::i;:::-;2792:431;;2777:446;2687:543;;;:::o;3236:117::-;3290:8;3340:5;3334:4;3330:16;3309:37;;3236:117;;;;:::o;3359:169::-;3403:6;3436:51;3484:1;3480:6;3472:5;3469:1;3465:13;3436:51;:::i;:::-;3432:56;3517:4;3511;3507:15;3497:25;;3410:118;3359:169;;;;:::o;3533:295::-;3609:4;3755:29;3780:3;3774:4;3755:29;:::i;:::-;3747:37;;3817:3;3814:1;3810:11;3804:4;3801:21;3793:29;;3533:295;;;;:::o;3833:1395::-;3950:37;3983:3;3950:37;:::i;:::-;4052:18;4044:6;4041:30;4038:56;;;4074:18;;:::i;:::-;4038:56;4118:38;4150:4;4144:11;4118:38;:::i;:::-;4203:67;4263:6;4255;4249:4;4203:67;:::i;:::-;4297:1;4321:4;4308:17;;4353:2;4345:6;4342:14;4370:1;4365:618;;;;5027:1;5044:6;5041:77;;;5093:9;5088:3;5084:19;5078:26;5069:35;;5041:77;5144:67;5204:6;5197:5;5144:67;:::i;:::-;5138:4;5131:81;5000:222;4335:887;;4365:618;4417:4;4413:9;4405:6;4401:22;4451:37;4483:4;4451:37;:::i;:::-;4510:1;4524:208;4538:7;4535:1;4532:14;4524:208;;;4617:9;4612:3;4608:19;4602:26;4594:6;4587:42;4668:1;4660:6;4656:14;4646:24;;4715:2;4704:9;4700:18;4687:31;;4561:4;4558:1;4554:12;4549:17;;4524:208;;;4760:6;4751:7;4748:19;4745:179;;;4818:9;4813:3;4809:19;4803:26;4861:48;4903:4;4895:6;4891:17;4880:9;4861:48;:::i;:::-;4853:6;4846:64;4768:156;4745:179;4970:1;4966;4958:6;4954:14;4950:22;4944:4;4937:36;4372:611;;;4335:887;;3925:1303;;;3833:1395;;:::o;69:565:0:-;;;;;;;" | |
}, | |
"deployedBytecode": { | |
"functionDebugData": { | |
"@helloWorld_26": { | |
"entryPoint": 401, | |
"id": 26, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"@owner_5": { | |
"entryPoint": 363, | |
"id": 5, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"@setText_38": { | |
"entryPoint": 197, | |
"id": 38, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"@transferOwnership_50": { | |
"entryPoint": 547, | |
"id": 50, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"abi_decode_t_address": { | |
"entryPoint": 1240, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_string_calldata_ptr": { | |
"entryPoint": 784, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 2 | |
}, | |
"abi_decode_tuple_t_address": { | |
"entryPoint": 1261, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_string_calldata_ptr": { | |
"entryPoint": 870, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 2 | |
}, | |
"abi_encode_t_address_to_t_address_fromStack": { | |
"entryPoint": 997, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 1126, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 1347, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { | |
"entryPoint": 1012, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 1183, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 1382, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"allocate_unbounded": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"array_dataslot_t_string_storage": { | |
"entryPoint": 1568, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_length_t_string_calldata_ptr": { | |
"entryPoint": 1414, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"array_length_t_string_memory_ptr": { | |
"entryPoint": 1039, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { | |
"entryPoint": 1050, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"clean_up_bytearray_end_slots_t_string_storage": { | |
"entryPoint": 1865, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"cleanup_t_address": { | |
"entryPoint": 979, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint160": { | |
"entryPoint": 947, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint256": { | |
"entryPoint": 1700, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"clear_storage_range_t_bytes1": { | |
"entryPoint": 1830, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"convert_t_uint256_to_t_uint256": { | |
"entryPoint": 1720, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"copy_byte_array_to_storage_from_t_string_calldata_ptr_to_t_string_storage": { | |
"entryPoint": 2006, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"copy_memory_to_memory_with_cleanup": { | |
"entryPoint": 1067, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"divide_by_32_ceil": { | |
"entryPoint": 1589, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"extract_byte_array_length": { | |
"entryPoint": 1519, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"extract_used_part_and_set_length_of_short_byte_array": { | |
"entryPoint": 1978, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"identity": { | |
"entryPoint": 1710, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"mask_bytes_dynamic": { | |
"entryPoint": 1948, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"panic_error_0x22": { | |
"entryPoint": 1472, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"panic_error_0x41": { | |
"entryPoint": 1425, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"prepare_store_t_uint256": { | |
"entryPoint": 1754, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490": { | |
"entryPoint": 774, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { | |
"entryPoint": 769, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": { | |
"entryPoint": 779, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { | |
"entryPoint": 764, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { | |
"entryPoint": 759, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"round_up_to_mul_of_32": { | |
"entryPoint": 1109, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"shift_left_dynamic": { | |
"entryPoint": 1605, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"shift_right_unsigned_dynamic": { | |
"entryPoint": 1935, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"storage_set_to_zero_t_uint256": { | |
"entryPoint": 1806, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33": { | |
"entryPoint": 1306, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"update_byte_slice_dynamic32": { | |
"entryPoint": 1618, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"update_storage_value_t_uint256_to_t_uint256": { | |
"entryPoint": 1764, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_address": { | |
"entryPoint": 1217, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"zero_value_for_split_t_uint256": { | |
"entryPoint": 1801, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
} | |
}, | |
"generatedSources": [ | |
{ | |
"ast": { | |
"nodeType": "YulBlock", | |
"src": "0:10553:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "47:35:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "57:19:1", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "73:2:1", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "67:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "67:9:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "57:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "allocate_unbounded", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "40:6:1", | |
"type": "" | |
} | |
], | |
"src": "7:75:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "177:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "194:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "197:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "187:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "187:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "187:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulFunctionDefinition", | |
"src": "88:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "300:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "317:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "320:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "310:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "310:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "310:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", | |
"nodeType": "YulFunctionDefinition", | |
"src": "211:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "423:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "440:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "443:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "433:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "433:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "433:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", | |
"nodeType": "YulFunctionDefinition", | |
"src": "334:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "546:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "563:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "566:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "556:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "556:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "556:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", | |
"nodeType": "YulFunctionDefinition", | |
"src": "457:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "669:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "686:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "689:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "679:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "679:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "679:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", | |
"nodeType": "YulFunctionDefinition", | |
"src": "580:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "792:478:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "841:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", | |
"nodeType": "YulIdentifier", | |
"src": "843:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "843:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "843:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "820:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "828:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "816:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "816:17:1" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "835:3:1" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "812:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "812:27:1" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "805:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "805:35:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "802:122:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "933:30:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "956:6:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "943:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "943:20:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "933:6:1" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1006:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", | |
"nodeType": "YulIdentifier", | |
"src": "1008:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1008:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1008:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "978:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "986:18:1", | |
"type": "", | |
"value": "0xffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "975:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "975:30:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "972:117:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1098:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1114:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1122:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1110:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1110:17:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "arrayPos", | |
"nodeType": "YulIdentifier", | |
"src": "1098:8:1" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1181:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", | |
"nodeType": "YulIdentifier", | |
"src": "1183:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1183:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1183:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "arrayPos", | |
"nodeType": "YulIdentifier", | |
"src": "1146:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "1160:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1168:4:1", | |
"type": "", | |
"value": "0x01" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "1156:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1156:17:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1142:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1142:32:1" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "1176:3:1" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "1139:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1139:41:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "1136:128:1" | |
} | |
] | |
}, | |
"name": "abi_decode_t_string_calldata_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "759:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "767:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "arrayPos", | |
"nodeType": "YulTypedName", | |
"src": "775:8:1", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "785:6:1", | |
"type": "" | |
} | |
], | |
"src": "717:553:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1362:443:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1408:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "1410:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1410:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1410:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1383:7:1" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1392:9:1" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "1379:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1379:23:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1404:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "1375:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1375:32:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "1372:119:1" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1501:297:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1516:45:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1547:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1558:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1543:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1543:17:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "1530:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1530:31:1" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1520:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1608:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", | |
"nodeType": "YulIdentifier", | |
"src": "1610:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1610:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1610:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1580:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1588:18:1", | |
"type": "", | |
"value": "0xffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "1577:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1577:30:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "1574:117:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1705:83:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1760:9:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1771:6:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1756:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1756:22:1" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1780:7:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_string_calldata_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "1723:32:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1723:65:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "1705:6:1" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "1713:6:1" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_string_calldata_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "1324:9:1", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "1335:7:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1347:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "1355:6:1", | |
"type": "" | |
} | |
], | |
"src": "1276:529:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1856:81:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1866:65:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1881:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1888:42:1", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "1877:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1877:54:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1866:7:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1838:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1848:7:1", | |
"type": "" | |
} | |
], | |
"src": "1811:126:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1988:51:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1998:35:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2027:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulIdentifier", | |
"src": "2009:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2009:24:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1998:7:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1970:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1980:7:1", | |
"type": "" | |
} | |
], | |
"src": "1943:96:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2110:53:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2127:3:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2150:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "2132:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2132:24:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2120:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2120:37:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2120:37:1" | |
} | |
] | |
}, | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2098:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "2105:3:1", | |
"type": "" | |
} | |
], | |
"src": "2045:118:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2267:124:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2277:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2289:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2300:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2285:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2285:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2277:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "2357:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2370:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2381:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2366:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2366:17:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "2313:43:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2313:71:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2313:71:1" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "2239:9:1", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "2251:6:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "2262:4:1", | |
"type": "" | |
} | |
], | |
"src": "2169:222:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2456:40:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2467:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2483:5:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "2477:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2477:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "2467:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2439:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "2449:6:1", | |
"type": "" | |
} | |
], | |
"src": "2397:99:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2598:73:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2615:3:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "2620:6:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2608:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2608:19:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2608:19:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2636:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2655:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2660:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2651:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2651:14:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulIdentifier", | |
"src": "2636:11:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "2570:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "2575:6:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulTypedName", | |
"src": "2586:11:1", | |
"type": "" | |
} | |
], | |
"src": "2502:169:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2739:184:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2749:10:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2758:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "i", | |
"nodeType": "YulTypedName", | |
"src": "2753:1:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2818:63:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dst", | |
"nodeType": "YulIdentifier", | |
"src": "2843:3:1" | |
}, | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2848:1:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2839:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2839:11:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "2862:3:1" | |
}, | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2867:1:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2858:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2858:11:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "2852:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2852:18:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2832:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2832:39:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2832:39:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2779:1:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "2782:6:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "2776:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2776:13:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "2790:19:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2792:15:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2801:1:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2804:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2797:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2797:10:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2792:1:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "2772:3:1", | |
"statements": [] | |
}, | |
"src": "2768:113:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dst", | |
"nodeType": "YulIdentifier", | |
"src": "2901:3:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "2906:6:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2897:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2897:16:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2915:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2890:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2890:27:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2890:27:1" | |
} | |
] | |
}, | |
"name": "copy_memory_to_memory_with_cleanup", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "src", | |
"nodeType": "YulTypedName", | |
"src": "2721:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "dst", | |
"nodeType": "YulTypedName", | |
"src": "2726:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "2731:6:1", | |
"type": "" | |
} | |
], | |
"src": "2677:246:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2977:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2987:38:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3005:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3012:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3001:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3001:14:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3021:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "3017:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3017:7:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "2997:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2997:28:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "2987:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "round_up_to_mul_of_32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2960:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "2970:6:1", | |
"type": "" | |
} | |
], | |
"src": "2929:102:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3129:285:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3139:53:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3186:5:1" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "3153:32:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3153:39:1" | |
}, | |
"variables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "3143:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3201:78:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3267:3:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3272:6:1" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "3208:58:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3208:71:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3201:3:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3327:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3334:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3323:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3323:16:1" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3341:3:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3346:6:1" | |
} | |
], | |
"functionName": { | |
"name": "copy_memory_to_memory_with_cleanup", | |
"nodeType": "YulIdentifier", | |
"src": "3288:34:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3288:65:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3288:65:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3362:46:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3373:3:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3400:6:1" | |
} | |
], | |
"functionName": { | |
"name": "round_up_to_mul_of_32", | |
"nodeType": "YulIdentifier", | |
"src": "3378:21:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3378:29:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3369:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3369:39:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "3362:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3110:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3117:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "3125:3:1", | |
"type": "" | |
} | |
], | |
"src": "3037:377:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3538:195:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3548:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "3560:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3571:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3556:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3556:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "3548:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "3595:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3606:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3591:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3591:17:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "3614:4:1" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "3620:9:1" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "3610:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3610:20:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "3584:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3584:47:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3584:47:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3640:86:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "3712:6:1" | |
}, | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "3721:4:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "3648:63:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3648:78:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "3640: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": "3510:9:1", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "3522:6:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "3533:4:1", | |
"type": "" | |
} | |
], | |
"src": "3420:313:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3782:79:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3839:16:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3848:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3851:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "3841:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3841:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3841:12:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3805:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3830:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "3812:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3812:24:1" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "3802:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3802:35:1" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "3795:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3795:43:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "3792:63:1" | |
} | |
] | |
}, | |
"name": "validator_revert_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3775:5:1", | |
"type": "" | |
} | |
], | |
"src": "3739:122:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3919:87:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3929:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "3951:6:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "3938:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3938:20:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3929:5:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3994:5:1" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "3967:26:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3967:33:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3967:33:1" | |
} | |
] | |
}, | |
"name": "abi_decode_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "3897:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "3905:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3913:5:1", | |
"type": "" | |
} | |
], | |
"src": "3867:139:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4078:263:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4124:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "4126:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4126:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4126:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "4099:7:1" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "4108:9:1" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "4095:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4095:23:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4120:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "4091:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4091:32:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "4088:119:1" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "4217:117:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4232:15:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4246:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "4236:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4261:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "4296:9:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "4307:6:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4292:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4292:22:1" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "4316:7:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "4271:20:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4271:53:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "4261:6:1" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "4048:9:1", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "4059:7:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "4071:6:1", | |
"type": "" | |
} | |
], | |
"src": "4012:329:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4453:67:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4475:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4483:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4471:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4471:14:1" | |
}, | |
{ | |
"hexValue": "43616c6c6572206973206e6f7420746865206f776e6572", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "4487:25:1", | |
"type": "", | |
"value": "Caller is not the owner" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "4464:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4464:49:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4464:49:1" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "4445:6:1", | |
"type": "" | |
} | |
], | |
"src": "4347:173:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4672:220:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4682:74:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4748:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4753:2:1", | |
"type": "", | |
"value": "23" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "4689:58:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4689:67:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4682:3:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4854:3:1" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33", | |
"nodeType": "YulIdentifier", | |
"src": "4765:88:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4765:93:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4765:93:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4867:19:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4878:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4883:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4874:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4874:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "4867:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "4660:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "4668:3:1", | |
"type": "" | |
} | |
], | |
"src": "4526:366:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5069:248:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5079:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "5091:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5102:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5087:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5087:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5079:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "5126:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5137:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5122:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5122:17:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5145:4:1" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "5151:9:1" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "5141:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5141:20:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5115:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5115:47:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5115:47:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5171:139:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5305:4:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "5179:124:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5179:131:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5171:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "5049:9:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "5064:4:1", | |
"type": "" | |
} | |
], | |
"src": "4898:419:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5389:31:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5400:13:1", | |
"value": { | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "5410:3:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "5400:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_string_calldata_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "5367:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "5374:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "5382:6:1", | |
"type": "" | |
} | |
], | |
"src": "5323:97:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5454:152:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5471:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5474:77:1", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5464:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5464:88:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5464:88:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5568:1:1", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5571:4:1", | |
"type": "", | |
"value": "0x41" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5561:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5561:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5561:15:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5592:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5595:4:1", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "5585:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5585:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5585:15:1" | |
} | |
] | |
}, | |
"name": "panic_error_0x41", | |
"nodeType": "YulFunctionDefinition", | |
"src": "5426:180:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5640:152:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5657:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5660:77:1", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5650:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5650:88:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5650:88:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5754:1:1", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5757:4:1", | |
"type": "", | |
"value": "0x22" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5747:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5747:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5747:15:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5778:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5781:4:1", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "5771:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5771:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5771:15:1" | |
} | |
] | |
}, | |
"name": "panic_error_0x22", | |
"nodeType": "YulFunctionDefinition", | |
"src": "5612:180:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5849:269:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5859:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "5873:4:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5879:1:1", | |
"type": "", | |
"value": "2" | |
} | |
], | |
"functionName": { | |
"name": "div", | |
"nodeType": "YulIdentifier", | |
"src": "5869:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5869:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "5859:6:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "5890:38:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "5920:4:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5926:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "5916:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5916:12:1" | |
}, | |
"variables": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulTypedName", | |
"src": "5894:18:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5967:51:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5981:27:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "5995:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6003:4:1", | |
"type": "", | |
"value": "0x7f" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "5991:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5991:17:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "5981:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulIdentifier", | |
"src": "5947:18:1" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "5940:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5940:26:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "5937:81:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6070:42:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x22", | |
"nodeType": "YulIdentifier", | |
"src": "6084:16:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6084:18:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6084:18:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulIdentifier", | |
"src": "6034:18:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "6057:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6065:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "6054:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6054:14:1" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "6031:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6031:38:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "6028:84:1" | |
} | |
] | |
}, | |
"name": "extract_byte_array_length", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "5833:4:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "5842:6:1", | |
"type": "" | |
} | |
], | |
"src": "5798:320:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6178:87:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6188:11:1", | |
"value": { | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "6196:3:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "6188:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6216:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "6219:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "6209:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6209:14:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6209:14:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6232:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6250:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6253:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "keccak256", | |
"nodeType": "YulIdentifier", | |
"src": "6240:9:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6240:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "6232:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "ptr", | |
"nodeType": "YulTypedName", | |
"src": "6165:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "6173:4:1", | |
"type": "" | |
} | |
], | |
"src": "6124:141:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6315:49:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6325:33:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6343:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6350:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6339:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6339:14:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6355:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "div", | |
"nodeType": "YulIdentifier", | |
"src": "6335:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6335:23:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "6325:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6298:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "6308:6:1", | |
"type": "" | |
} | |
], | |
"src": "6271:93:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6423:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6433:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulIdentifier", | |
"src": "6458:4:1" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6464:5:1" | |
} | |
], | |
"functionName": { | |
"name": "shl", | |
"nodeType": "YulIdentifier", | |
"src": "6454:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6454:16:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulIdentifier", | |
"src": "6433:8:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "shift_left_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulTypedName", | |
"src": "6398:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6404:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulTypedName", | |
"src": "6414:8:1", | |
"type": "" | |
} | |
], | |
"src": "6370:107:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6559:317:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "6569:35:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBytes", | |
"nodeType": "YulIdentifier", | |
"src": "6590:10:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6602:1:1", | |
"type": "", | |
"value": "8" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "6586:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6586:18:1" | |
}, | |
"variables": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulTypedName", | |
"src": "6573:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "6613:109:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulIdentifier", | |
"src": "6644:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6655:66:1", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "shift_left_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "6625:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6625:97:1" | |
}, | |
"variables": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulTypedName", | |
"src": "6617:4:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6731:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulIdentifier", | |
"src": "6762:9:1" | |
}, | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "6773:8:1" | |
} | |
], | |
"functionName": { | |
"name": "shift_left_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "6743:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6743:39:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "6731:8:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6791:30:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6804:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "6815:4:1" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "6811:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6811:9:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "6800:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6800:21:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6791:5:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6830:40:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6843:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "6854:8:1" | |
}, | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "6864:4:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "6850:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6850:19:1" | |
} | |
], | |
"functionName": { | |
"name": "or", | |
"nodeType": "YulIdentifier", | |
"src": "6840:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6840:30:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "6830:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "update_byte_slice_dynamic32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6520:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "shiftBytes", | |
"nodeType": "YulTypedName", | |
"src": "6527:10:1", | |
"type": "" | |
}, | |
{ | |
"name": "toInsert", | |
"nodeType": "YulTypedName", | |
"src": "6539:8:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "6552:6:1", | |
"type": "" | |
} | |
], | |
"src": "6483:393:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6927:32:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6937:16:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6948:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "6937:7:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6909:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "6919:7:1", | |
"type": "" | |
} | |
], | |
"src": "6882:77:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6997:28:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7007:12:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "7014:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "7007:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "identity", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6983:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "6993:3:1", | |
"type": "" | |
} | |
], | |
"src": "6965:60:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7091:82:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7101:66:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "7159:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7141:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7141:24:1" | |
} | |
], | |
"functionName": { | |
"name": "identity", | |
"nodeType": "YulIdentifier", | |
"src": "7132:8:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7132:34:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7114:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7114:53:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "converted", | |
"nodeType": "YulIdentifier", | |
"src": "7101:9:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "convert_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "7071:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "converted", | |
"nodeType": "YulTypedName", | |
"src": "7081:9:1", | |
"type": "" | |
} | |
], | |
"src": "7031:142:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7226:28:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7236:12:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "7243:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "7236:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "prepare_store_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "7212:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "7222:3:1", | |
"type": "" | |
} | |
], | |
"src": "7179:75:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7336:193:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "7346:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value_0", | |
"nodeType": "YulIdentifier", | |
"src": "7401:7:1" | |
} | |
], | |
"functionName": { | |
"name": "convert_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7370:30:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7370:39:1" | |
}, | |
"variables": [ | |
{ | |
"name": "convertedValue_0", | |
"nodeType": "YulTypedName", | |
"src": "7350:16:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "7425:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "7465:4:1" | |
} | |
], | |
"functionName": { | |
"name": "sload", | |
"nodeType": "YulIdentifier", | |
"src": "7459:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7459:11:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "7472:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "convertedValue_0", | |
"nodeType": "YulIdentifier", | |
"src": "7504:16:1" | |
} | |
], | |
"functionName": { | |
"name": "prepare_store_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7480:23:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7480:41:1" | |
} | |
], | |
"functionName": { | |
"name": "update_byte_slice_dynamic32", | |
"nodeType": "YulIdentifier", | |
"src": "7431:27:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7431:91:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "7418:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7418:105:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7418:105:1" | |
} | |
] | |
}, | |
"name": "update_storage_value_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "7313:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "7319:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "value_0", | |
"nodeType": "YulTypedName", | |
"src": "7327:7:1", | |
"type": "" | |
} | |
], | |
"src": "7260:269:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7584:24:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7594:8:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7601:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "7594:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "zero_value_for_split_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "7580:3:1", | |
"type": "" | |
} | |
], | |
"src": "7535:73:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7667:136:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "7677:46:1", | |
"value": { | |
"arguments": [], | |
"functionName": { | |
"name": "zero_value_for_split_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7691:30:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7691:32:1" | |
}, | |
"variables": [ | |
{ | |
"name": "zero_0", | |
"nodeType": "YulTypedName", | |
"src": "7681:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "7776:4:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "7782:6:1" | |
}, | |
{ | |
"name": "zero_0", | |
"nodeType": "YulIdentifier", | |
"src": "7790:6:1" | |
} | |
], | |
"functionName": { | |
"name": "update_storage_value_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7732:43:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7732:65:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7732:65:1" | |
} | |
] | |
}, | |
"name": "storage_set_to_zero_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "7653:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "7659:6:1", | |
"type": "" | |
} | |
], | |
"src": "7614:189:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7859:136:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7926:63:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "7970:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7977:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "storage_set_to_zero_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7940:29:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7940:39:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7940:39:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "7879:5:1" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "7886:3:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "7876:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7876:14:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "7891:26:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7893:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "7906:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7913:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7902:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7902:13:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "7893:5:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "7873:2:1", | |
"statements": [] | |
}, | |
"src": "7869:120:1" | |
} | |
] | |
}, | |
"name": "clear_storage_range_t_bytes1", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "start", | |
"nodeType": "YulTypedName", | |
"src": "7847:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "7854:3:1", | |
"type": "" | |
} | |
], | |
"src": "7809:186:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8080:464:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8106:431:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "8120:54:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "array", | |
"nodeType": "YulIdentifier", | |
"src": "8168:5:1" | |
} | |
], | |
"functionName": { | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "8136:31:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8136:38:1" | |
}, | |
"variables": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulTypedName", | |
"src": "8124:8:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "8187:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "8210:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "startIndex", | |
"nodeType": "YulIdentifier", | |
"src": "8238:10:1" | |
} | |
], | |
"functionName": { | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulIdentifier", | |
"src": "8220:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8220:29:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8206:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8206:44:1" | |
}, | |
"variables": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulTypedName", | |
"src": "8191:11:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8407:27:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8409:23:1", | |
"value": { | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "8424:8:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulIdentifier", | |
"src": "8409:11:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "startIndex", | |
"nodeType": "YulIdentifier", | |
"src": "8391:10:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8403:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "8388:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8388:18:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "8385:49:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulIdentifier", | |
"src": "8476:11:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "8493:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "8521:3:1" | |
} | |
], | |
"functionName": { | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulIdentifier", | |
"src": "8503:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8503:22:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8489:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8489:37:1" | |
} | |
], | |
"functionName": { | |
"name": "clear_storage_range_t_bytes1", | |
"nodeType": "YulIdentifier", | |
"src": "8447:28:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8447:80:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8447:80:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "8097:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8102:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "8094:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8094:11:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "8091:446:1" | |
} | |
] | |
}, | |
"name": "clean_up_bytearray_end_slots_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "array", | |
"nodeType": "YulTypedName", | |
"src": "8056:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "8063:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "startIndex", | |
"nodeType": "YulTypedName", | |
"src": "8068:10:1", | |
"type": "" | |
} | |
], | |
"src": "8001:543:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8613:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8623:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulIdentifier", | |
"src": "8648:4:1" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "8654:5:1" | |
} | |
], | |
"functionName": { | |
"name": "shr", | |
"nodeType": "YulIdentifier", | |
"src": "8644:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8644:16:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulIdentifier", | |
"src": "8623:8:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "shift_right_unsigned_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulTypedName", | |
"src": "8588:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "8594:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulTypedName", | |
"src": "8604:8:1", | |
"type": "" | |
} | |
], | |
"src": "8550:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8724:118:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "8734:68:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8783:1:1", | |
"type": "", | |
"value": "8" | |
}, | |
{ | |
"name": "bytes", | |
"nodeType": "YulIdentifier", | |
"src": "8786:5:1" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "8779:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8779:13:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8798:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "8794:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8794:6:1" | |
} | |
], | |
"functionName": { | |
"name": "shift_right_unsigned_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "8750:28:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8750:51:1" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "8746:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8746:56:1" | |
}, | |
"variables": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulTypedName", | |
"src": "8738:4:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8811:25:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "8825:4:1" | |
}, | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "8831:4:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "8821:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8821:15:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "8811:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "8701:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "bytes", | |
"nodeType": "YulTypedName", | |
"src": "8707:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "8717:6:1", | |
"type": "" | |
} | |
], | |
"src": "8673:169:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8928:214:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9061:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "9088:4:1" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "9094:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "9069:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9069:29:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "9061:4:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9107:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "9118:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9128:1:1", | |
"type": "", | |
"value": "2" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "9131:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "9124:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9124:11:1" | |
} | |
], | |
"functionName": { | |
"name": "or", | |
"nodeType": "YulIdentifier", | |
"src": "9115:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9115:21:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "used", | |
"nodeType": "YulIdentifier", | |
"src": "9107:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "extract_used_part_and_set_length_of_short_byte_array", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "8909:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "8915:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "used", | |
"nodeType": "YulTypedName", | |
"src": "8923:4:1", | |
"type": "" | |
} | |
], | |
"src": "8847:295:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9246:1304:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9257:58:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "9306:3:1" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "9311:3:1" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_string_calldata_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "9271:34:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9271:44:1" | |
}, | |
"variables": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulTypedName", | |
"src": "9261:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9400:22:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x41", | |
"nodeType": "YulIdentifier", | |
"src": "9402:16:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9402:18:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9402:18:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "9372:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9380:18:1", | |
"type": "", | |
"value": "0xffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "9369:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9369:30:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "9366:56:1" | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9432:52:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "9478:4:1" | |
} | |
], | |
"functionName": { | |
"name": "sload", | |
"nodeType": "YulIdentifier", | |
"src": "9472:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9472:11:1" | |
} | |
], | |
"functionName": { | |
"name": "extract_byte_array_length", | |
"nodeType": "YulIdentifier", | |
"src": "9446:25:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9446:38:1" | |
}, | |
"variables": [ | |
{ | |
"name": "oldLen", | |
"nodeType": "YulTypedName", | |
"src": "9436:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "9577:4:1" | |
}, | |
{ | |
"name": "oldLen", | |
"nodeType": "YulIdentifier", | |
"src": "9583:6:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "9591:6:1" | |
} | |
], | |
"functionName": { | |
"name": "clean_up_bytearray_end_slots_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "9531:45:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9531:67:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9531:67:1" | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9608:18:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9625:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulTypedName", | |
"src": "9612:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"cases": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9673:625:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9687:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "9706:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9718:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "9714:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9714:9:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "9702:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9702:22:1" | |
}, | |
"variables": [ | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulTypedName", | |
"src": "9691:7:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9738:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "9784:4:1" | |
} | |
], | |
"functionName": { | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "9752:31:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9752:37:1" | |
}, | |
"variables": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulTypedName", | |
"src": "9742:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9802:10:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9811:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "i", | |
"nodeType": "YulTypedName", | |
"src": "9806:1:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9870:170:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "9895:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "9920:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "9925:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9916:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9916:19:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "9903:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9903:33:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "9888:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9888:49:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9888:49:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9954:24:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "9968:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9976:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9964:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9964:14:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "9954:6:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9995:31:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "10012:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10023:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10008:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10008:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "9995:9:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "9836:1:1" | |
}, | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulIdentifier", | |
"src": "9839:7:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "9833:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9833:14:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "9848:21:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9850:17:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "9859:1:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9862:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9855:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9855:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "9850:1:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "9829:3:1", | |
"statements": [] | |
}, | |
"src": "9825:215:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10076:163:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "10094:50:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "10128:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "10133:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10124:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10124:19:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "10111:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10111:33:1" | |
}, | |
"variables": [ | |
{ | |
"name": "lastValue", | |
"nodeType": "YulTypedName", | |
"src": "10098:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "10168:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "lastValue", | |
"nodeType": "YulIdentifier", | |
"src": "10195:9:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10210:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10218:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "10206:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10206:17:1" | |
} | |
], | |
"functionName": { | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "10176:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10176:48:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "10161:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10161:64:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10161:64:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulIdentifier", | |
"src": "10059:7:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10068:6:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "10056:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10056:19:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "10053:186:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "10259:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10273:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10281:1:1", | |
"type": "", | |
"value": "2" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "10269:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10269:14:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10285:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10265:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10265:22:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "10252:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10252:36:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10252:36:1" | |
} | |
] | |
}, | |
"nodeType": "YulCase", | |
"src": "9666:632:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9671:1:1", | |
"type": "", | |
"value": "1" | |
} | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10315:229:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "10329:14:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10342:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "10333:5:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10366:74:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10384:42:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "10410:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "10415:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10406:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10406:19:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "10393:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10393:33:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "10384:5:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10359:6:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "10356:84:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "10460:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "10519:5:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10526:6:1" | |
} | |
], | |
"functionName": { | |
"name": "extract_used_part_and_set_length_of_short_byte_array", | |
"nodeType": "YulIdentifier", | |
"src": "10466:52:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10466:67:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "10453:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10453:81:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10453:81:1" | |
} | |
] | |
}, | |
"nodeType": "YulCase", | |
"src": "10307:237:1", | |
"value": "default" | |
} | |
], | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "9646:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9654:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "9643:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9643:14:1" | |
}, | |
"nodeType": "YulSwitch", | |
"src": "9636:908:1" | |
} | |
] | |
}, | |
"name": "copy_byte_array_to_storage_from_t_string_calldata_ptr_to_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "9230:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "src", | |
"nodeType": "YulTypedName", | |
"src": "9236:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "9241:3:1", | |
"type": "" | |
} | |
], | |
"src": "9147:1403:1" | |
} | |
] | |
}, | |
"contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // string\n function abi_decode_t_string_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_string_calldata_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\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_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 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 copy_memory_to_memory_with_cleanup(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 mstore(add(dst, length), 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\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_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\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 validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33(memPtr) {\n\n mstore(add(memPtr, 0), \"Caller is not the owner\")\n\n }\n\n function abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_length_t_string_calldata_ptr(value, len) -> length {\n\n length := len\n\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\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 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 array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_calldata_ptr_to_t_string_storage(slot, src, len) {\n\n let newLen := array_length_t_string_calldata_ptr(src, len)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, calldataload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := calldataload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := calldataload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", | |
"id": 1, | |
"language": "Yul", | |
"name": "#utility.yul" | |
} | |
], | |
"immutableReferences": {}, | |
"linkReferences": {}, | |
"object": "608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3a1f9d146100515780638da5cb5b1461006d578063c605f76c1461008b578063f2fde38b146100a9575b600080fd5b61006b60048036038101906100669190610366565b6100c5565b005b61007561016b565b60405161008291906103f4565b60405180910390f35b610093610191565b6040516100a0919061049f565b60405180910390f35b6100c360048036038101906100be91906104ed565b610223565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610155576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014c90610566565b60405180910390fd5b8181600091826101669291906107d6565b505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060600080546101a0906105ef565b80601f01602080910402602001604051908101604052809291908181526020018280546101cc906105ef565b80156102195780601f106101ee57610100808354040283529160200191610219565b820191906000526020600020905b8154815290600101906020018083116101fc57829003601f168201915b5050505050905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102aa90610566565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f84011261032657610325610301565b5b8235905067ffffffffffffffff81111561034357610342610306565b5b60208301915083600182028301111561035f5761035e61030b565b5b9250929050565b6000806020838503121561037d5761037c6102f7565b5b600083013567ffffffffffffffff81111561039b5761039a6102fc565b5b6103a785828601610310565b92509250509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103de826103b3565b9050919050565b6103ee816103d3565b82525050565b600060208201905061040960008301846103e5565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561044957808201518184015260208101905061042e565b60008484015250505050565b6000601f19601f8301169050919050565b60006104718261040f565b61047b818561041a565b935061048b81856020860161042b565b61049481610455565b840191505092915050565b600060208201905081810360008301526104b98184610466565b905092915050565b6104ca816103d3565b81146104d557600080fd5b50565b6000813590506104e7816104c1565b92915050565b600060208284031215610503576105026102f7565b5b6000610511848285016104d8565b91505092915050565b7f43616c6c6572206973206e6f7420746865206f776e6572000000000000000000600082015250565b600061055060178361041a565b915061055b8261051a565b602082019050919050565b6000602082019050818103600083015261057f81610543565b9050919050565b600082905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061060757607f821691505b60208210810361061a576106196105c0565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026106827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610645565b61068c8683610645565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006106d36106ce6106c9846106a4565b6106ae565b6106a4565b9050919050565b6000819050919050565b6106ed836106b8565b6107016106f9826106da565b848454610652565b825550505050565b600090565b610716610709565b6107218184846106e4565b505050565b5b818110156107455761073a60008261070e565b600181019050610727565b5050565b601f82111561078a5761075b81610620565b61076484610635565b81016020851015610773578190505b61078761077f85610635565b830182610726565b50505b505050565b600082821c905092915050565b60006107ad6000198460080261078f565b1980831691505092915050565b60006107c6838361079c565b9150826002028217905092915050565b6107e08383610586565b67ffffffffffffffff8111156107f9576107f8610591565b5b61080382546105ef565b61080e828285610749565b6000601f83116001811461083d576000841561082b578287013590505b61083585826107ba565b86555061089d565b601f19841661084b86610620565b60005b828110156108735784890135825560018201915060208501945060208101905061084e565b86831015610890578489013561088c601f89168261079c565b8355505b6001600288020188555050505b5050505050505056fea264697066735822122017505db29d005a0ca7290a01a22e0cf9abe8543ef818189ad2148cbb95966fc064736f6c63430008120033", | |
"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 0x5D3A1F9D EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x6D JUMPI DUP1 PUSH4 0xC605F76C EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xA9 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x366 JUMP JUMPDEST PUSH2 0xC5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x75 PUSH2 0x16B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x82 SWAP2 SWAP1 PUSH2 0x3F4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x93 PUSH2 0x191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA0 SWAP2 SWAP1 PUSH2 0x49F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xBE SWAP2 SWAP1 PUSH2 0x4ED JUMP JUMPDEST PUSH2 0x223 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x155 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14C SWAP1 PUSH2 0x566 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 DUP2 PUSH1 0x0 SWAP2 DUP3 PUSH2 0x166 SWAP3 SWAP2 SWAP1 PUSH2 0x7D6 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x1A0 SWAP1 PUSH2 0x5EF 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 0x1CC SWAP1 PUSH2 0x5EF JUMP JUMPDEST DUP1 ISZERO PUSH2 0x219 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x219 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 0x1FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2B3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2AA SWAP1 PUSH2 0x566 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x326 JUMPI PUSH2 0x325 PUSH2 0x301 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x343 JUMPI PUSH2 0x342 PUSH2 0x306 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x35F JUMPI PUSH2 0x35E PUSH2 0x30B JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x37D JUMPI PUSH2 0x37C PUSH2 0x2F7 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x39B JUMPI PUSH2 0x39A PUSH2 0x2FC JUMP JUMPDEST JUMPDEST PUSH2 0x3A7 DUP6 DUP3 DUP7 ADD PUSH2 0x310 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3DE DUP3 PUSH2 0x3B3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3EE DUP2 PUSH2 0x3D3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x409 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3E5 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 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x449 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x42E JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x471 DUP3 PUSH2 0x40F JUMP JUMPDEST PUSH2 0x47B DUP2 DUP6 PUSH2 0x41A JUMP JUMPDEST SWAP4 POP PUSH2 0x48B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x42B JUMP JUMPDEST PUSH2 0x494 DUP2 PUSH2 0x455 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4B9 DUP2 DUP5 PUSH2 0x466 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4CA DUP2 PUSH2 0x3D3 JUMP JUMPDEST DUP2 EQ PUSH2 0x4D5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4E7 DUP2 PUSH2 0x4C1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x503 JUMPI PUSH2 0x502 PUSH2 0x2F7 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x511 DUP5 DUP3 DUP6 ADD PUSH2 0x4D8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F7420746865206F776E6572000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x550 PUSH1 0x17 DUP4 PUSH2 0x41A JUMP JUMPDEST SWAP2 POP PUSH2 0x55B DUP3 PUSH2 0x51A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x57F DUP2 PUSH2 0x543 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 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 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x607 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x61A JUMPI PUSH2 0x619 PUSH2 0x5C0 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x682 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x645 JUMP JUMPDEST PUSH2 0x68C DUP7 DUP4 PUSH2 0x645 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6D3 PUSH2 0x6CE PUSH2 0x6C9 DUP5 PUSH2 0x6A4 JUMP JUMPDEST PUSH2 0x6AE JUMP JUMPDEST PUSH2 0x6A4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6ED DUP4 PUSH2 0x6B8 JUMP JUMPDEST PUSH2 0x701 PUSH2 0x6F9 DUP3 PUSH2 0x6DA JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x652 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x716 PUSH2 0x709 JUMP JUMPDEST PUSH2 0x721 DUP2 DUP5 DUP5 PUSH2 0x6E4 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x745 JUMPI PUSH2 0x73A PUSH1 0x0 DUP3 PUSH2 0x70E JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x727 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x78A JUMPI PUSH2 0x75B DUP2 PUSH2 0x620 JUMP JUMPDEST PUSH2 0x764 DUP5 PUSH2 0x635 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x773 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x787 PUSH2 0x77F DUP6 PUSH2 0x635 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x726 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AD PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x78F JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7C6 DUP4 DUP4 PUSH2 0x79C JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x7E0 DUP4 DUP4 PUSH2 0x586 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7F9 JUMPI PUSH2 0x7F8 PUSH2 0x591 JUMP JUMPDEST JUMPDEST PUSH2 0x803 DUP3 SLOAD PUSH2 0x5EF JUMP JUMPDEST PUSH2 0x80E DUP3 DUP3 DUP6 PUSH2 0x749 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x83D JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x82B JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x835 DUP6 DUP3 PUSH2 0x7BA JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x89D JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x84B DUP7 PUSH2 0x620 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x873 JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x84E JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x890 JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x88C PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x79C JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 OR POP 0x5D 0xB2 SWAP14 STOP GAS 0xC 0xA7 0x29 EXP ADD LOG2 0x2E 0xC 0xF9 0xAB 0xE8 SLOAD RETURNDATACOPY 0xF8 XOR XOR SWAP11 0xD2 EQ DUP13 0xBB SWAP6 SWAP7 PUSH16 0xC064736F6C6343000812003300000000 ", | |
"sourceMap": "69:565:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;326:90;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;122:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;234:86;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;422:95;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;326:90;581:5;;;;;;;;;;;567:19;;:10;:19;;;558:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;402:7:::1;;395:4;:14;;;;;;;:::i;:::-;;326:90:::0;;:::o;122:20::-;;;;;;;;;;;;;:::o;234:86::-;277:13;309:4;302:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;234:86;:::o;422:95::-;581:5;;;;;;;;;;;567:19;;:10;:19;;;558:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;502:8:::1;494:5;;:16;;;;;;;;;;;;;;;;;;422:95:::0;:::o;88:117:1:-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:117;689:1;686;679:12;717:553;775:8;785:6;835:3;828:4;820:6;816:17;812:27;802:122;;843:79;;:::i;:::-;802:122;956:6;943:20;933:30;;986:18;978:6;975:30;972:117;;;1008:79;;:::i;:::-;972:117;1122:4;1114:6;1110:17;1098:29;;1176:3;1168:4;1160:6;1156:17;1146:8;1142:32;1139:41;1136:128;;;1183:79;;:::i;:::-;1136:128;717:553;;;;;:::o;1276:529::-;1347:6;1355;1404:2;1392:9;1383:7;1379:23;1375:32;1372:119;;;1410:79;;:::i;:::-;1372:119;1558:1;1547:9;1543:17;1530:31;1588:18;1580:6;1577:30;1574:117;;;1610:79;;:::i;:::-;1574:117;1723:65;1780:7;1771:6;1760:9;1756:22;1723:65;:::i;:::-;1705:83;;;;1501:297;1276:529;;;;;:::o;1811:126::-;1848:7;1888:42;1881:5;1877:54;1866:65;;1811:126;;;:::o;1943:96::-;1980:7;2009:24;2027:5;2009:24;:::i;:::-;1998:35;;1943:96;;;:::o;2045:118::-;2132:24;2150:5;2132:24;:::i;:::-;2127:3;2120:37;2045:118;;:::o;2169:222::-;2262:4;2300:2;2289:9;2285:18;2277:26;;2313:71;2381:1;2370:9;2366:17;2357:6;2313:71;:::i;:::-;2169:222;;;;:::o;2397:99::-;2449:6;2483:5;2477:12;2467:22;;2397:99;;;:::o;2502:169::-;2586:11;2620:6;2615:3;2608:19;2660:4;2655:3;2651:14;2636:29;;2502:169;;;;:::o;2677:246::-;2758:1;2768:113;2782:6;2779:1;2776:13;2768:113;;;2867:1;2862:3;2858:11;2852:18;2848:1;2843:3;2839:11;2832:39;2804:2;2801:1;2797:10;2792:15;;2768:113;;;2915:1;2906:6;2901:3;2897:16;2890:27;2739:184;2677:246;;;:::o;2929:102::-;2970:6;3021:2;3017:7;3012:2;3005:5;3001:14;2997:28;2987:38;;2929:102;;;:::o;3037:377::-;3125:3;3153:39;3186:5;3153:39;:::i;:::-;3208:71;3272:6;3267:3;3208:71;:::i;:::-;3201:78;;3288:65;3346:6;3341:3;3334:4;3327:5;3323:16;3288:65;:::i;:::-;3378:29;3400:6;3378:29;:::i;:::-;3373:3;3369:39;3362:46;;3129:285;3037:377;;;;:::o;3420:313::-;3533:4;3571:2;3560:9;3556:18;3548:26;;3620:9;3614:4;3610:20;3606:1;3595:9;3591:17;3584:47;3648:78;3721:4;3712:6;3648:78;:::i;:::-;3640:86;;3420:313;;;;:::o;3739:122::-;3812:24;3830:5;3812:24;:::i;:::-;3805:5;3802:35;3792:63;;3851:1;3848;3841:12;3792:63;3739:122;:::o;3867:139::-;3913:5;3951:6;3938:20;3929:29;;3967:33;3994:5;3967:33;:::i;:::-;3867:139;;;;:::o;4012:329::-;4071:6;4120:2;4108:9;4099:7;4095:23;4091:32;4088:119;;;4126:79;;:::i;:::-;4088:119;4246:1;4271:53;4316:7;4307:6;4296:9;4292:22;4271:53;:::i;:::-;4261:63;;4217:117;4012:329;;;;:::o;4347:173::-;4487:25;4483:1;4475:6;4471:14;4464:49;4347:173;:::o;4526:366::-;4668:3;4689:67;4753:2;4748:3;4689:67;:::i;:::-;4682:74;;4765:93;4854:3;4765:93;:::i;:::-;4883:2;4878:3;4874:12;4867:19;;4526:366;;;:::o;4898:419::-;5064:4;5102:2;5091:9;5087:18;5079:26;;5151:9;5145:4;5141:20;5137:1;5126:9;5122:17;5115:47;5179:131;5305:4;5179:131;:::i;:::-;5171:139;;4898:419;;;:::o;5323:97::-;5382:6;5410:3;5400:13;;5323:97;;;;:::o;5426:180::-;5474:77;5471:1;5464:88;5571:4;5568:1;5561:15;5595:4;5592:1;5585:15;5612:180;5660:77;5657:1;5650:88;5757:4;5754:1;5747:15;5781:4;5778:1;5771:15;5798:320;5842:6;5879:1;5873:4;5869:12;5859:22;;5926:1;5920:4;5916:12;5947:18;5937:81;;6003:4;5995:6;5991:17;5981:27;;5937:81;6065:2;6057:6;6054:14;6034:18;6031:38;6028:84;;6084:18;;:::i;:::-;6028:84;5849:269;5798:320;;;:::o;6124:141::-;6173:4;6196:3;6188:11;;6219:3;6216:1;6209:14;6253:4;6250:1;6240:18;6232:26;;6124:141;;;:::o;6271:93::-;6308:6;6355:2;6350;6343:5;6339:14;6335:23;6325:33;;6271:93;;;:::o;6370:107::-;6414:8;6464:5;6458:4;6454:16;6433:37;;6370:107;;;;:::o;6483:393::-;6552:6;6602:1;6590:10;6586:18;6625:97;6655:66;6644:9;6625:97;:::i;:::-;6743:39;6773:8;6762:9;6743:39;:::i;:::-;6731:51;;6815:4;6811:9;6804:5;6800:21;6791:30;;6864:4;6854:8;6850:19;6843:5;6840:30;6830:40;;6559:317;;6483:393;;;;;:::o;6882:77::-;6919:7;6948:5;6937:16;;6882:77;;;:::o;6965:60::-;6993:3;7014:5;7007:12;;6965:60;;;:::o;7031:142::-;7081:9;7114:53;7132:34;7141:24;7159:5;7141:24;:::i;:::-;7132:34;:::i;:::-;7114:53;:::i;:::-;7101:66;;7031:142;;;:::o;7179:75::-;7222:3;7243:5;7236:12;;7179:75;;;:::o;7260:269::-;7370:39;7401:7;7370:39;:::i;:::-;7431:91;7480:41;7504:16;7480:41;:::i;:::-;7472:6;7465:4;7459:11;7431:91;:::i;:::-;7425:4;7418:105;7336:193;7260:269;;;:::o;7535:73::-;7580:3;7535:73;:::o;7614:189::-;7691:32;;:::i;:::-;7732:65;7790:6;7782;7776:4;7732:65;:::i;:::-;7667:136;7614:189;;:::o;7809:186::-;7869:120;7886:3;7879:5;7876:14;7869:120;;;7940:39;7977:1;7970:5;7940:39;:::i;:::-;7913:1;7906:5;7902:13;7893:22;;7869:120;;;7809:186;;:::o;8001:543::-;8102:2;8097:3;8094:11;8091:446;;;8136:38;8168:5;8136:38;:::i;:::-;8220:29;8238:10;8220:29;:::i;:::-;8210:8;8206:44;8403:2;8391:10;8388:18;8385:49;;;8424:8;8409:23;;8385:49;8447:80;8503:22;8521:3;8503:22;:::i;:::-;8493:8;8489:37;8476:11;8447:80;:::i;:::-;8106:431;;8091:446;8001:543;;;:::o;8550:117::-;8604:8;8654:5;8648:4;8644:16;8623:37;;8550:117;;;;:::o;8673:169::-;8717:6;8750:51;8798:1;8794:6;8786:5;8783:1;8779:13;8750:51;:::i;:::-;8746:56;8831:4;8825;8821:15;8811:25;;8724:118;8673:169;;;;:::o;8847:295::-;8923:4;9069:29;9094:3;9088:4;9069:29;:::i;:::-;9061:37;;9131:3;9128:1;9124:11;9118:4;9115:21;9107:29;;8847:295;;;;:::o;9147:1403::-;9271:44;9311:3;9306;9271:44;:::i;:::-;9380:18;9372:6;9369:30;9366:56;;;9402:18;;:::i;:::-;9366:56;9446:38;9478:4;9472:11;9446:38;:::i;:::-;9531:67;9591:6;9583;9577:4;9531:67;:::i;:::-;9625:1;9654:2;9646:6;9643:14;9671:1;9666:632;;;;10342:1;10359:6;10356:84;;;10415:9;10410:3;10406:19;10393:33;10384:42;;10356:84;10466:67;10526:6;10519:5;10466:67;:::i;:::-;10460:4;10453:81;10315:229;9636:908;;9666:632;9718:4;9714:9;9706:6;9702:22;9752:37;9784:4;9752:37;:::i;:::-;9811:1;9825:215;9839:7;9836:1;9833:14;9825:215;;;9925:9;9920:3;9916:19;9903:33;9895:6;9888:49;9976:1;9968:6;9964:14;9954:24;;10023:2;10012:9;10008:18;9995:31;;9862:4;9859:1;9855:12;9850:17;;9825:215;;;10068:6;10059:7;10056:19;10053:186;;;10133:9;10128:3;10124:19;10111:33;10176:48;10218:4;10210:6;10206:17;10195:9;10176:48;:::i;:::-;10168:6;10161:64;10076:163;10053:186;10285:1;10281;10273:6;10269:14;10265:22;10259:4;10252:36;9673:625;;;9636:908;;9246:1304;;;9147:1403;;;:::o" | |
}, | |
"gasEstimates": { | |
"creation": { | |
"codeDepositCost": "453600", | |
"executionCost": "infinite", | |
"totalCost": "infinite" | |
}, | |
"external": { | |
"helloWorld()": "infinite", | |
"owner()": "2514", | |
"setText(string)": "infinite", | |
"transferOwnership(address)": "26936" | |
} | |
}, | |
"methodIdentifiers": { | |
"helloWorld()": "c605f76c", | |
"owner()": "8da5cb5b", | |
"setText(string)": "5d3a1f9d", | |
"transferOwnership(address)": "f2fde38b" | |
} | |
}, | |
"abi": [ | |
{ | |
"inputs": [], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [], | |
"name": "helloWorld", | |
"outputs": [ | |
{ | |
"internalType": "string", | |
"name": "", | |
"type": "string" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "owner", | |
"outputs": [ | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "string", | |
"name": "newText", | |
"type": "string" | |
} | |
], | |
"name": "setText", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "newOwner", | |
"type": "address" | |
} | |
], | |
"name": "transferOwnership", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"compiler": { | |
"version": "0.8.18+commit.87f61d96" | |
}, | |
"language": "Solidity", | |
"output": { | |
"abi": [ | |
{ | |
"inputs": [], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [], | |
"name": "helloWorld", | |
"outputs": [ | |
{ | |
"internalType": "string", | |
"name": "", | |
"type": "string" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "owner", | |
"outputs": [ | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "string", | |
"name": "newText", | |
"type": "string" | |
} | |
], | |
"name": "setText", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "newOwner", | |
"type": "address" | |
} | |
], | |
"name": "transferOwnership", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
} | |
], | |
"devdoc": { | |
"kind": "dev", | |
"methods": {}, | |
"version": 1 | |
}, | |
"userdoc": { | |
"kind": "user", | |
"methods": {}, | |
"version": 1 | |
} | |
}, | |
"settings": { | |
"compilationTarget": { | |
"contracts/helloWorld.sol": "HelloWorld" | |
}, | |
"evmVersion": "paris", | |
"libraries": {}, | |
"metadata": { | |
"bytecodeHash": "ipfs" | |
}, | |
"optimizer": { | |
"enabled": false, | |
"runs": 200 | |
}, | |
"remappings": [] | |
}, | |
"sources": { | |
"contracts/helloWorld.sol": { | |
"keccak256": "0xd970a1e71d309ed67385e9b3a55b752f30f3cf763945814731d31d4081836102", | |
"license": "GPL-3.0", | |
"urls": [ | |
"bzz-raw://4253679d90a22950c90b427aa87c5b37bda6d9d9d4b94758079dc45421847ce3", | |
"dweb:/ipfs/QmbVSz1aegeu48FvFGcenEtmwKGF3rbDysgzCRYTJa7wQX" | |
] | |
} | |
}, | |
"version": 1 | |
} |
This file has been truncated, but you can view the full file.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"id": "861567aeb35f369d20c4187d8c568f86", | |
"_format": "hh-sol-build-info-1", | |
"solcVersion": "0.8.18", | |
"solcLongVersion": "0.8.18+commit.87f61d96", | |
"input": { | |
"language": "Solidity", | |
"sources": { | |
"contracts/helloWorld.sol": { | |
"content": "// SPDX-License-Identifier: GPL-3.0\npragma solidity >=0.7.0 <0.9.0;\n\ncontract HelloWorld {\n\n string private text;\n\n address public owner;\n\n constructor() {\n text = \"Hello World\";\n owner = msg.sender;\n }\n\n function helloWorld() public view returns (string memory) {\n return text;\n }\n\n function setText(string calldata newText) public onlyOwner {\n text = newText;\n }\n\n function transferOwnership(address newOwner) public onlyOwner {\n owner = newOwner;\n }\n\n modifier onlyOwner()\n {\n require (msg.sender == owner, \"Caller is not the owner\");\n _;\n }\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/helloWorld.sol": { | |
"HelloWorld": { | |
"abi": [ | |
{ | |
"inputs": [], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [], | |
"name": "helloWorld", | |
"outputs": [ | |
{ | |
"internalType": "string", | |
"name": "", | |
"type": "string" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "owner", | |
"outputs": [ | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "string", | |
"name": "newText", | |
"type": "string" | |
} | |
], | |
"name": "setText", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "newOwner", | |
"type": "address" | |
} | |
], | |
"name": "transferOwnership", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
} | |
], | |
"devdoc": { | |
"kind": "dev", | |
"methods": {}, | |
"version": 1 | |
}, | |
"evm": { | |
"assembly": " /* \"contracts/helloWorld.sol\":69:634 contract HelloWorld {... */\n mstore(0x40, 0x80)\n /* \"contracts/helloWorld.sol\":149:228 constructor() {... */\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n /* \"contracts/helloWorld.sol\":173:193 text = \"Hello World\" */\n mload(0x40)\n dup1\n 0x40\n add\n 0x40\n mstore\n dup1\n 0x0b\n dup2\n mstore\n 0x20\n add\n 0x48656c6c6f20576f726c64000000000000000000000000000000000000000000\n dup2\n mstore\n pop\n /* \"contracts/helloWorld.sol\":173:177 text */\n 0x00\n /* \"contracts/helloWorld.sol\":173:193 text = \"Hello World\" */\n swap1\n dup2\n tag_4\n swap2\n swap1\n tag_5\n jump\t// in\ntag_4:\n pop\n /* \"contracts/helloWorld.sol\":211:221 msg.sender */\n caller\n /* \"contracts/helloWorld.sol\":203:208 owner */\n 0x01\n 0x00\n /* \"contracts/helloWorld.sol\":203:221 owner = msg.sender */\n 0x0100\n exp\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/helloWorld.sol\":69:634 contract HelloWorld {... */\n jump(tag_6)\n /* \"#utility.yul\":7:106 */\ntag_7:\n /* \"#utility.yul\":59:65 */\n 0x00\n /* \"#utility.yul\":93:98 */\n dup2\n /* \"#utility.yul\":87:99 */\n mload\n /* \"#utility.yul\":77:99 */\n swap1\n pop\n /* \"#utility.yul\":7:106 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":112:292 */\ntag_8:\n /* \"#utility.yul\":160:237 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":157:158 */\n 0x00\n /* \"#utility.yul\":150:238 */\n mstore\n /* \"#utility.yul\":257:261 */\n 0x41\n /* \"#utility.yul\":254:255 */\n 0x04\n /* \"#utility.yul\":247:262 */\n mstore\n /* \"#utility.yul\":281:285 */\n 0x24\n /* \"#utility.yul\":278:279 */\n 0x00\n /* \"#utility.yul\":271:286 */\n revert\n /* \"#utility.yul\":298:478 */\ntag_9:\n /* \"#utility.yul\":346:423 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":343:344 */\n 0x00\n /* \"#utility.yul\":336:424 */\n mstore\n /* \"#utility.yul\":443:447 */\n 0x22\n /* \"#utility.yul\":440:441 */\n 0x04\n /* \"#utility.yul\":433:448 */\n mstore\n /* \"#utility.yul\":467:471 */\n 0x24\n /* \"#utility.yul\":464:465 */\n 0x00\n /* \"#utility.yul\":457:472 */\n revert\n /* \"#utility.yul\":484:804 */\ntag_10:\n /* \"#utility.yul\":528:534 */\n 0x00\n /* \"#utility.yul\":565:566 */\n 0x02\n /* \"#utility.yul\":559:563 */\n dup3\n /* \"#utility.yul\":555:567 */\n div\n /* \"#utility.yul\":545:567 */\n swap1\n pop\n /* \"#utility.yul\":612:613 */\n 0x01\n /* \"#utility.yul\":606:610 */\n dup3\n /* \"#utility.yul\":602:614 */\n and\n /* \"#utility.yul\":633:651 */\n dup1\n /* \"#utility.yul\":623:704 */\n tag_32\n jumpi\n /* \"#utility.yul\":689:693 */\n 0x7f\n /* \"#utility.yul\":681:687 */\n dup3\n /* \"#utility.yul\":677:694 */\n and\n /* \"#utility.yul\":667:694 */\n swap2\n pop\n /* \"#utility.yul\":623:704 */\ntag_32:\n /* \"#utility.yul\":751:753 */\n 0x20\n /* \"#utility.yul\":743:749 */\n dup3\n /* \"#utility.yul\":740:754 */\n lt\n /* \"#utility.yul\":720:738 */\n dup2\n /* \"#utility.yul\":717:755 */\n sub\n /* \"#utility.yul\":714:798 */\n tag_33\n jumpi\n /* \"#utility.yul\":770:788 */\n tag_34\n tag_9\n jump\t// in\ntag_34:\n /* \"#utility.yul\":714:798 */\ntag_33:\n /* \"#utility.yul\":535:804 */\n pop\n /* \"#utility.yul\":484:804 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":810:951 */\ntag_11:\n /* \"#utility.yul\":859:863 */\n 0x00\n /* \"#utility.yul\":882:885 */\n dup2\n /* \"#utility.yul\":874:885 */\n swap1\n pop\n /* \"#utility.yul\":905:908 */\n dup2\n /* \"#utility.yul\":902:903 */\n 0x00\n /* \"#utility.yul\":895:909 */\n mstore\n /* \"#utility.yul\":939:943 */\n 0x20\n /* \"#utility.yul\":936:937 */\n 0x00\n /* \"#utility.yul\":926:944 */\n keccak256\n /* \"#utility.yul\":918:944 */\n swap1\n pop\n /* \"#utility.yul\":810:951 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":957:1050 */\ntag_12:\n /* \"#utility.yul\":994:1000 */\n 0x00\n /* \"#utility.yul\":1041:1043 */\n 0x20\n /* \"#utility.yul\":1036:1038 */\n 0x1f\n /* \"#utility.yul\":1029:1034 */\n dup4\n /* \"#utility.yul\":1025:1039 */\n add\n /* \"#utility.yul\":1021:1044 */\n div\n /* \"#utility.yul\":1011:1044 */\n swap1\n pop\n /* \"#utility.yul\":957:1050 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1056:1163 */\ntag_13:\n /* \"#utility.yul\":1100:1108 */\n 0x00\n /* \"#utility.yul\":1150:1155 */\n dup3\n /* \"#utility.yul\":1144:1148 */\n dup3\n /* \"#utility.yul\":1140:1156 */\n shl\n /* \"#utility.yul\":1119:1156 */\n swap1\n pop\n /* \"#utility.yul\":1056:1163 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1169:1562 */\ntag_14:\n /* \"#utility.yul\":1238:1244 */\n 0x00\n /* \"#utility.yul\":1288:1289 */\n 0x08\n /* \"#utility.yul\":1276:1286 */\n dup4\n /* \"#utility.yul\":1272:1290 */\n mul\n /* \"#utility.yul\":1311:1408 */\n tag_39\n /* \"#utility.yul\":1341:1407 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":1330:1339 */\n dup3\n /* \"#utility.yul\":1311:1408 */\n tag_13\n jump\t// in\ntag_39:\n /* \"#utility.yul\":1429:1468 */\n tag_40\n /* \"#utility.yul\":1459:1467 */\n dup7\n /* \"#utility.yul\":1448:1457 */\n dup4\n /* \"#utility.yul\":1429:1468 */\n tag_13\n jump\t// in\ntag_40:\n /* \"#utility.yul\":1417:1468 */\n swap6\n pop\n /* \"#utility.yul\":1501:1505 */\n dup1\n /* \"#utility.yul\":1497:1506 */\n not\n /* \"#utility.yul\":1490:1495 */\n dup5\n /* \"#utility.yul\":1486:1507 */\n and\n /* \"#utility.yul\":1477:1507 */\n swap4\n pop\n /* \"#utility.yul\":1550:1554 */\n dup1\n /* \"#utility.yul\":1540:1548 */\n dup7\n /* \"#utility.yul\":1536:1555 */\n and\n /* \"#utility.yul\":1529:1534 */\n dup5\n /* \"#utility.yul\":1526:1556 */\n or\n /* \"#utility.yul\":1516:1556 */\n swap3\n pop\n /* \"#utility.yul\":1245:1562 */\n pop\n pop\n /* \"#utility.yul\":1169:1562 */\n swap4\n swap3\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1568:1645 */\ntag_15:\n /* \"#utility.yul\":1605:1612 */\n 0x00\n /* \"#utility.yul\":1634:1639 */\n dup2\n /* \"#utility.yul\":1623:1639 */\n swap1\n pop\n /* \"#utility.yul\":1568:1645 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1651:1711 */\ntag_16:\n /* \"#utility.yul\":1679:1682 */\n 0x00\n /* \"#utility.yul\":1700:1705 */\n dup2\n /* \"#utility.yul\":1693:1705 */\n swap1\n pop\n /* \"#utility.yul\":1651:1711 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1717:1859 */\ntag_17:\n /* \"#utility.yul\":1767:1776 */\n 0x00\n /* \"#utility.yul\":1800:1853 */\n tag_44\n /* \"#utility.yul\":1818:1852 */\n tag_45\n /* \"#utility.yul\":1827:1851 */\n tag_46\n /* \"#utility.yul\":1845:1850 */\n dup5\n /* \"#utility.yul\":1827:1851 */\n tag_15\n jump\t// in\ntag_46:\n /* \"#utility.yul\":1818:1852 */\n tag_16\n jump\t// in\ntag_45:\n /* \"#utility.yul\":1800:1853 */\n tag_15\n jump\t// in\ntag_44:\n /* \"#utility.yul\":1787:1853 */\n swap1\n pop\n /* \"#utility.yul\":1717:1859 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1865:1940 */\ntag_18:\n /* \"#utility.yul\":1908:1911 */\n 0x00\n /* \"#utility.yul\":1929:1934 */\n dup2\n /* \"#utility.yul\":1922:1934 */\n swap1\n pop\n /* \"#utility.yul\":1865:1940 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1946:2215 */\ntag_19:\n /* \"#utility.yul\":2056:2095 */\n tag_49\n /* \"#utility.yul\":2087:2094 */\n dup4\n /* \"#utility.yul\":2056:2095 */\n tag_17\n jump\t// in\ntag_49:\n /* \"#utility.yul\":2117:2208 */\n tag_50\n /* \"#utility.yul\":2166:2207 */\n tag_51\n /* \"#utility.yul\":2190:2206 */\n dup3\n /* \"#utility.yul\":2166:2207 */\n tag_18\n jump\t// in\ntag_51:\n /* \"#utility.yul\":2158:2164 */\n dup5\n /* \"#utility.yul\":2151:2155 */\n dup5\n /* \"#utility.yul\":2145:2156 */\n sload\n /* \"#utility.yul\":2117:2208 */\n tag_14\n jump\t// in\ntag_50:\n /* \"#utility.yul\":2111:2115 */\n dup3\n /* \"#utility.yul\":2104:2209 */\n sstore\n /* \"#utility.yul\":2022:2215 */\n pop\n /* \"#utility.yul\":1946:2215 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2221:2294 */\ntag_20:\n /* \"#utility.yul\":2266:2269 */\n 0x00\n /* \"#utility.yul\":2221:2294 */\n swap1\n jump\t// out\n /* \"#utility.yul\":2300:2489 */\ntag_21:\n /* \"#utility.yul\":2377:2409 */\n tag_54\n tag_20\n jump\t// in\ntag_54:\n /* \"#utility.yul\":2418:2483 */\n tag_55\n /* \"#utility.yul\":2476:2482 */\n dup2\n /* \"#utility.yul\":2468:2474 */\n dup5\n /* \"#utility.yul\":2462:2466 */\n dup5\n /* \"#utility.yul\":2418:2483 */\n tag_19\n jump\t// in\ntag_55:\n /* \"#utility.yul\":2353:2489 */\n pop\n /* \"#utility.yul\":2300:2489 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2495:2681 */\ntag_22:\n /* \"#utility.yul\":2555:2675 */\ntag_57:\n /* \"#utility.yul\":2572:2575 */\n dup2\n /* \"#utility.yul\":2565:2570 */\n dup2\n /* \"#utility.yul\":2562:2576 */\n lt\n /* \"#utility.yul\":2555:2675 */\n iszero\n tag_59\n jumpi\n /* \"#utility.yul\":2626:2665 */\n tag_60\n /* \"#utility.yul\":2663:2664 */\n 0x00\n /* \"#utility.yul\":2656:2661 */\n dup3\n /* \"#utility.yul\":2626:2665 */\n tag_21\n jump\t// in\ntag_60:\n /* \"#utility.yul\":2599:2600 */\n 0x01\n /* \"#utility.yul\":2592:2597 */\n dup2\n /* \"#utility.yul\":2588:2601 */\n add\n /* \"#utility.yul\":2579:2601 */\n swap1\n pop\n /* \"#utility.yul\":2555:2675 */\n jump(tag_57)\ntag_59:\n /* \"#utility.yul\":2495:2681 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2687:3230 */\ntag_23:\n /* \"#utility.yul\":2788:2790 */\n 0x1f\n /* \"#utility.yul\":2783:2786 */\n dup3\n /* \"#utility.yul\":2780:2791 */\n gt\n /* \"#utility.yul\":2777:3223 */\n iszero\n tag_62\n jumpi\n /* \"#utility.yul\":2822:2860 */\n tag_63\n /* \"#utility.yul\":2854:2859 */\n dup2\n /* \"#utility.yul\":2822:2860 */\n tag_11\n jump\t// in\ntag_63:\n /* \"#utility.yul\":2906:2935 */\n tag_64\n /* \"#utility.yul\":2924:2934 */\n dup5\n /* \"#utility.yul\":2906:2935 */\n tag_12\n jump\t// in\ntag_64:\n /* \"#utility.yul\":2896:2904 */\n dup2\n /* \"#utility.yul\":2892:2936 */\n add\n /* \"#utility.yul\":3089:3091 */\n 0x20\n /* \"#utility.yul\":3077:3087 */\n dup6\n /* \"#utility.yul\":3074:3092 */\n lt\n /* \"#utility.yul\":3071:3120 */\n iszero\n tag_65\n jumpi\n /* \"#utility.yul\":3110:3118 */\n dup2\n /* \"#utility.yul\":3095:3118 */\n swap1\n pop\n /* \"#utility.yul\":3071:3120 */\ntag_65:\n /* \"#utility.yul\":3133:3213 */\n tag_66\n /* \"#utility.yul\":3189:3211 */\n tag_67\n /* \"#utility.yul\":3207:3210 */\n dup6\n /* \"#utility.yul\":3189:3211 */\n tag_12\n jump\t// in\ntag_67:\n /* \"#utility.yul\":3179:3187 */\n dup4\n /* \"#utility.yul\":3175:3212 */\n add\n /* \"#utility.yul\":3162:3173 */\n dup3\n /* \"#utility.yul\":3133:3213 */\n tag_22\n jump\t// in\ntag_66:\n /* \"#utility.yul\":2792:3223 */\n pop\n pop\n /* \"#utility.yul\":2777:3223 */\ntag_62:\n /* \"#utility.yul\":2687:3230 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3236:3353 */\ntag_24:\n /* \"#utility.yul\":3290:3298 */\n 0x00\n /* \"#utility.yul\":3340:3345 */\n dup3\n /* \"#utility.yul\":3334:3338 */\n dup3\n /* \"#utility.yul\":3330:3346 */\n shr\n /* \"#utility.yul\":3309:3346 */\n swap1\n pop\n /* \"#utility.yul\":3236:3353 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3359:3528 */\ntag_25:\n /* \"#utility.yul\":3403:3409 */\n 0x00\n /* \"#utility.yul\":3436:3487 */\n tag_70\n /* \"#utility.yul\":3484:3485 */\n 0x00\n /* \"#utility.yul\":3480:3486 */\n not\n /* \"#utility.yul\":3472:3477 */\n dup5\n /* \"#utility.yul\":3469:3470 */\n 0x08\n /* \"#utility.yul\":3465:3478 */\n mul\n /* \"#utility.yul\":3436:3487 */\n tag_24\n jump\t// in\ntag_70:\n /* \"#utility.yul\":3432:3488 */\n not\n /* \"#utility.yul\":3517:3521 */\n dup1\n /* \"#utility.yul\":3511:3515 */\n dup4\n /* \"#utility.yul\":3507:3522 */\n and\n /* \"#utility.yul\":3497:3522 */\n swap2\n pop\n /* \"#utility.yul\":3410:3528 */\n pop\n /* \"#utility.yul\":3359:3528 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3533:3828 */\ntag_26:\n /* \"#utility.yul\":3609:3613 */\n 0x00\n /* \"#utility.yul\":3755:3784 */\n tag_72\n /* \"#utility.yul\":3780:3783 */\n dup4\n /* \"#utility.yul\":3774:3778 */\n dup4\n /* \"#utility.yul\":3755:3784 */\n tag_25\n jump\t// in\ntag_72:\n /* \"#utility.yul\":3747:3784 */\n swap2\n pop\n /* \"#utility.yul\":3817:3820 */\n dup3\n /* \"#utility.yul\":3814:3815 */\n 0x02\n /* \"#utility.yul\":3810:3821 */\n mul\n /* \"#utility.yul\":3804:3808 */\n dup3\n /* \"#utility.yul\":3801:3822 */\n or\n /* \"#utility.yul\":3793:3822 */\n swap1\n pop\n /* \"#utility.yul\":3533:3828 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3833:5228 */\ntag_5:\n /* \"#utility.yul\":3950:3987 */\n tag_74\n /* \"#utility.yul\":3983:3986 */\n dup3\n /* \"#utility.yul\":3950:3987 */\n tag_7\n jump\t// in\ntag_74:\n /* \"#utility.yul\":4052:4070 */\n 0xffffffffffffffff\n /* \"#utility.yul\":4044:4050 */\n dup2\n /* \"#utility.yul\":4041:4071 */\n gt\n /* \"#utility.yul\":4038:4094 */\n iszero\n tag_75\n jumpi\n /* \"#utility.yul\":4074:4092 */\n tag_76\n tag_8\n jump\t// in\ntag_76:\n /* \"#utility.yul\":4038:4094 */\ntag_75:\n /* \"#utility.yul\":4118:4156 */\n tag_77\n /* \"#utility.yul\":4150:4154 */\n dup3\n /* \"#utility.yul\":4144:4155 */\n sload\n /* \"#utility.yul\":4118:4156 */\n tag_10\n jump\t// in\ntag_77:\n /* \"#utility.yul\":4203:4270 */\n tag_78\n /* \"#utility.yul\":4263:4269 */\n dup3\n /* \"#utility.yul\":4255:4261 */\n dup3\n /* \"#utility.yul\":4249:4253 */\n dup6\n /* \"#utility.yul\":4203:4270 */\n tag_23\n jump\t// in\ntag_78:\n /* \"#utility.yul\":4297:4298 */\n 0x00\n /* \"#utility.yul\":4321:4325 */\n 0x20\n /* \"#utility.yul\":4308:4325 */\n swap1\n pop\n /* \"#utility.yul\":4353:4355 */\n 0x1f\n /* \"#utility.yul\":4345:4351 */\n dup4\n /* \"#utility.yul\":4342:4356 */\n gt\n /* \"#utility.yul\":4370:4371 */\n 0x01\n /* \"#utility.yul\":4365:4983 */\n dup2\n eq\n tag_80\n jumpi\n /* \"#utility.yul\":5027:5028 */\n 0x00\n /* \"#utility.yul\":5044:5050 */\n dup5\n /* \"#utility.yul\":5041:5118 */\n iszero\n tag_81\n jumpi\n /* \"#utility.yul\":5093:5102 */\n dup3\n /* \"#utility.yul\":5088:5091 */\n dup8\n /* \"#utility.yul\":5084:5103 */\n add\n /* \"#utility.yul\":5078:5104 */\n mload\n /* \"#utility.yul\":5069:5104 */\n swap1\n pop\n /* \"#utility.yul\":5041:5118 */\ntag_81:\n /* \"#utility.yul\":5144:5211 */\n tag_82\n /* \"#utility.yul\":5204:5210 */\n dup6\n /* \"#utility.yul\":5197:5202 */\n dup3\n /* \"#utility.yul\":5144:5211 */\n tag_26\n jump\t// in\ntag_82:\n /* \"#utility.yul\":5138:5142 */\n dup7\n /* \"#utility.yul\":5131:5212 */\n sstore\n /* \"#utility.yul\":5000:5222 */\n pop\n /* \"#utility.yul\":4335:5222 */\n jump(tag_79)\n /* \"#utility.yul\":4365:4983 */\ntag_80:\n /* \"#utility.yul\":4417:4421 */\n 0x1f\n /* \"#utility.yul\":4413:4422 */\n not\n /* \"#utility.yul\":4405:4411 */\n dup5\n /* \"#utility.yul\":4401:4423 */\n and\n /* \"#utility.yul\":4451:4488 */\n tag_83\n /* \"#utility.yul\":4483:4487 */\n dup7\n /* \"#utility.yul\":4451:4488 */\n tag_11\n jump\t// in\ntag_83:\n /* \"#utility.yul\":4510:4511 */\n 0x00\n /* \"#utility.yul\":4524:4732 */\ntag_84:\n /* \"#utility.yul\":4538:4545 */\n dup3\n /* \"#utility.yul\":4535:4536 */\n dup2\n /* \"#utility.yul\":4532:4546 */\n lt\n /* \"#utility.yul\":4524:4732 */\n iszero\n tag_86\n jumpi\n /* \"#utility.yul\":4617:4626 */\n dup5\n /* \"#utility.yul\":4612:4615 */\n dup10\n /* \"#utility.yul\":4608:4627 */\n add\n /* \"#utility.yul\":4602:4628 */\n mload\n /* \"#utility.yul\":4594:4600 */\n dup3\n /* \"#utility.yul\":4587:4629 */\n sstore\n /* \"#utility.yul\":4668:4669 */\n 0x01\n /* \"#utility.yul\":4660:4666 */\n dup3\n /* \"#utility.yul\":4656:4670 */\n add\n /* \"#utility.yul\":4646:4670 */\n swap2\n pop\n /* \"#utility.yul\":4715:4717 */\n 0x20\n /* \"#utility.yul\":4704:4713 */\n dup6\n /* \"#utility.yul\":4700:4718 */\n add\n /* \"#utility.yul\":4687:4718 */\n swap5\n pop\n /* \"#utility.yul\":4561:4565 */\n 0x20\n /* \"#utility.yul\":4558:4559 */\n dup2\n /* \"#utility.yul\":4554:4566 */\n add\n /* \"#utility.yul\":4549:4566 */\n swap1\n pop\n /* \"#utility.yul\":4524:4732 */\n jump(tag_84)\ntag_86:\n /* \"#utility.yul\":4760:4766 */\n dup7\n /* \"#utility.yul\":4751:4758 */\n dup4\n /* \"#utility.yul\":4748:4767 */\n lt\n /* \"#utility.yul\":4745:4924 */\n iszero\n tag_87\n jumpi\n /* \"#utility.yul\":4818:4827 */\n dup5\n /* \"#utility.yul\":4813:4816 */\n dup10\n /* \"#utility.yul\":4809:4828 */\n add\n /* \"#utility.yul\":4803:4829 */\n mload\n /* \"#utility.yul\":4861:4909 */\n tag_88\n /* \"#utility.yul\":4903:4907 */\n 0x1f\n /* \"#utility.yul\":4895:4901 */\n dup10\n /* \"#utility.yul\":4891:4908 */\n and\n /* \"#utility.yul\":4880:4889 */\n dup3\n /* \"#utility.yul\":4861:4909 */\n tag_25\n jump\t// in\ntag_88:\n /* \"#utility.yul\":4853:4859 */\n dup4\n /* \"#utility.yul\":4846:4910 */\n sstore\n /* \"#utility.yul\":4768:4924 */\n pop\n /* \"#utility.yul\":4745:4924 */\ntag_87:\n /* \"#utility.yul\":4970:4971 */\n 0x01\n /* \"#utility.yul\":4966:4967 */\n 0x02\n /* \"#utility.yul\":4958:4964 */\n dup9\n /* \"#utility.yul\":4954:4968 */\n mul\n /* \"#utility.yul\":4950:4972 */\n add\n /* \"#utility.yul\":4944:4948 */\n dup9\n /* \"#utility.yul\":4937:4973 */\n sstore\n /* \"#utility.yul\":4372:4983 */\n pop\n pop\n pop\n /* \"#utility.yul\":4335:5222 */\ntag_79:\n pop\n /* \"#utility.yul\":3925:5228 */\n pop\n pop\n pop\n /* \"#utility.yul\":3833:5228 */\n pop\n pop\n jump\t// out\n /* \"contracts/helloWorld.sol\":69:634 contract HelloWorld {... */\ntag_6:\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/helloWorld.sol\":69:634 contract HelloWorld {... */\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 0x5d3a1f9d\n eq\n tag_3\n jumpi\n dup1\n 0x8da5cb5b\n eq\n tag_4\n jumpi\n dup1\n 0xc605f76c\n eq\n tag_5\n jumpi\n dup1\n 0xf2fde38b\n eq\n tag_6\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/helloWorld.sol\":326:416 function setText(string calldata newText) public onlyOwner {... */\n tag_3:\n tag_7\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_8\n swap2\n swap1\n tag_9\n jump\t// in\n tag_8:\n tag_10\n jump\t// in\n tag_7:\n stop\n /* \"contracts/helloWorld.sol\":122:142 address public owner */\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/helloWorld.sol\":234:320 function helloWorld() public view returns (string memory) {... */\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/helloWorld.sol\":422:517 function transferOwnership(address newOwner) public onlyOwner {... */\n tag_6:\n tag_19\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_20\n swap2\n swap1\n tag_21\n jump\t// in\n tag_20:\n tag_22\n jump\t// in\n tag_19:\n stop\n /* \"contracts/helloWorld.sol\":326:416 function setText(string calldata newText) public onlyOwner {... */\n tag_10:\n /* \"contracts/helloWorld.sol\":581:586 owner */\n 0x01\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/helloWorld.sol\":567:586 msg.sender == owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/helloWorld.sol\":567:577 msg.sender */\n caller\n /* \"contracts/helloWorld.sol\":567:586 msg.sender == owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n eq\n /* \"contracts/helloWorld.sol\":558:614 require (msg.sender == owner, \"Caller is not the owner\") */\n tag_24\n jumpi\n mload(0x40)\n 0x08c379a000000000000000000000000000000000000000000000000000000000\n dup2\n mstore\n 0x04\n add\n tag_25\n swap1\n tag_26\n jump\t// in\n tag_25:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n revert\n tag_24:\n /* \"contracts/helloWorld.sol\":402:409 newText */\n dup2\n dup2\n /* \"contracts/helloWorld.sol\":395:399 text */\n 0x00\n /* \"contracts/helloWorld.sol\":395:409 text = newText */\n swap2\n dup3\n tag_28\n swap3\n swap2\n swap1\n tag_29\n jump\t// in\n tag_28:\n pop\n /* \"contracts/helloWorld.sol\":326:416 function setText(string calldata newText) public onlyOwner {... */\n pop\n pop\n jump\t// out\n /* \"contracts/helloWorld.sol\":122:142 address public owner */\n tag_12:\n 0x01\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/helloWorld.sol\":234:320 function helloWorld() public view returns (string memory) {... */\n tag_16:\n /* \"contracts/helloWorld.sol\":277:290 string memory */\n 0x60\n /* \"contracts/helloWorld.sol\":309:313 text */\n 0x00\n /* \"contracts/helloWorld.sol\":302:313 return text */\n dup1\n sload\n tag_31\n swap1\n tag_32\n jump\t// in\n tag_31:\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_33\n swap1\n tag_32\n jump\t// in\n tag_33:\n dup1\n iszero\n tag_34\n jumpi\n dup1\n 0x1f\n lt\n tag_35\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_34)\n tag_35:\n dup3\n add\n swap2\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n tag_36:\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_36\n jumpi\n dup3\n swap1\n sub\n 0x1f\n and\n dup3\n add\n swap2\n tag_34:\n pop\n pop\n pop\n pop\n pop\n swap1\n pop\n /* \"contracts/helloWorld.sol\":234:320 function helloWorld() public view returns (string memory) {... */\n swap1\n jump\t// out\n /* \"contracts/helloWorld.sol\":422:517 function transferOwnership(address newOwner) public onlyOwner {... */\n tag_22:\n /* \"contracts/helloWorld.sol\":581:586 owner */\n 0x01\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/helloWorld.sol\":567:586 msg.sender == owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/helloWorld.sol\":567:577 msg.sender */\n caller\n /* \"contracts/helloWorld.sol\":567:586 msg.sender == owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n eq\n /* \"contracts/helloWorld.sol\":558:614 require (msg.sender == owner, \"Caller is not the owner\") */\n tag_38\n jumpi\n mload(0x40)\n 0x08c379a000000000000000000000000000000000000000000000000000000000\n dup2\n mstore\n 0x04\n add\n tag_39\n swap1\n tag_26\n jump\t// in\n tag_39:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n revert\n tag_38:\n /* \"contracts/helloWorld.sol\":502:510 newOwner */\n dup1\n /* \"contracts/helloWorld.sol\":494:499 owner */\n 0x01\n 0x00\n /* \"contracts/helloWorld.sol\":494:510 owner = newOwner */\n 0x0100\n exp\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/helloWorld.sol\":422:517 function transferOwnership(address newOwner) public onlyOwner {... */\n pop\n jump\t// out\n /* \"#utility.yul\":88:205 */\n tag_42:\n /* \"#utility.yul\":197:198 */\n 0x00\n /* \"#utility.yul\":194:195 */\n dup1\n /* \"#utility.yul\":187:199 */\n revert\n /* \"#utility.yul\":211:328 */\n tag_43:\n /* \"#utility.yul\":320:321 */\n 0x00\n /* \"#utility.yul\":317:318 */\n dup1\n /* \"#utility.yul\":310:322 */\n revert\n /* \"#utility.yul\":334:451 */\n tag_44:\n /* \"#utility.yul\":443:444 */\n 0x00\n /* \"#utility.yul\":440:441 */\n dup1\n /* \"#utility.yul\":433:445 */\n revert\n /* \"#utility.yul\":457:574 */\n tag_45:\n /* \"#utility.yul\":566:567 */\n 0x00\n /* \"#utility.yul\":563:564 */\n dup1\n /* \"#utility.yul\":556:568 */\n revert\n /* \"#utility.yul\":580:697 */\n tag_46:\n /* \"#utility.yul\":689:690 */\n 0x00\n /* \"#utility.yul\":686:687 */\n dup1\n /* \"#utility.yul\":679:691 */\n revert\n /* \"#utility.yul\":717:1270 */\n tag_47:\n /* \"#utility.yul\":775:783 */\n 0x00\n /* \"#utility.yul\":785:791 */\n dup1\n /* \"#utility.yul\":835:838 */\n dup4\n /* \"#utility.yul\":828:832 */\n 0x1f\n /* \"#utility.yul\":820:826 */\n dup5\n /* \"#utility.yul\":816:833 */\n add\n /* \"#utility.yul\":812:839 */\n slt\n /* \"#utility.yul\":802:924 */\n tag_87\n jumpi\n /* \"#utility.yul\":843:922 */\n tag_88\n tag_44\n jump\t// in\n tag_88:\n /* \"#utility.yul\":802:924 */\n tag_87:\n /* \"#utility.yul\":956:962 */\n dup3\n /* \"#utility.yul\":943:963 */\n calldataload\n /* \"#utility.yul\":933:963 */\n swap1\n pop\n /* \"#utility.yul\":986:1004 */\n 0xffffffffffffffff\n /* \"#utility.yul\":978:984 */\n dup2\n /* \"#utility.yul\":975:1005 */\n gt\n /* \"#utility.yul\":972:1089 */\n iszero\n tag_89\n jumpi\n /* \"#utility.yul\":1008:1087 */\n tag_90\n tag_45\n jump\t// in\n tag_90:\n /* \"#utility.yul\":972:1089 */\n tag_89:\n /* \"#utility.yul\":1122:1126 */\n 0x20\n /* \"#utility.yul\":1114:1120 */\n dup4\n /* \"#utility.yul\":1110:1127 */\n add\n /* \"#utility.yul\":1098:1127 */\n swap2\n pop\n /* \"#utility.yul\":1176:1179 */\n dup4\n /* \"#utility.yul\":1168:1172 */\n 0x01\n /* \"#utility.yul\":1160:1166 */\n dup3\n /* \"#utility.yul\":1156:1173 */\n mul\n /* \"#utility.yul\":1146:1154 */\n dup4\n /* \"#utility.yul\":1142:1174 */\n add\n /* \"#utility.yul\":1139:1180 */\n gt\n /* \"#utility.yul\":1136:1264 */\n iszero\n tag_91\n jumpi\n /* \"#utility.yul\":1183:1262 */\n tag_92\n tag_46\n jump\t// in\n tag_92:\n /* \"#utility.yul\":1136:1264 */\n tag_91:\n /* \"#utility.yul\":717:1270 */\n swap3\n pop\n swap3\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1276:1805 */\n tag_9:\n /* \"#utility.yul\":1347:1353 */\n 0x00\n /* \"#utility.yul\":1355:1361 */\n dup1\n /* \"#utility.yul\":1404:1406 */\n 0x20\n /* \"#utility.yul\":1392:1401 */\n dup4\n /* \"#utility.yul\":1383:1390 */\n dup6\n /* \"#utility.yul\":1379:1402 */\n sub\n /* \"#utility.yul\":1375:1407 */\n slt\n /* \"#utility.yul\":1372:1491 */\n iszero\n tag_94\n jumpi\n /* \"#utility.yul\":1410:1489 */\n tag_95\n tag_42\n jump\t// in\n tag_95:\n /* \"#utility.yul\":1372:1491 */\n tag_94:\n /* \"#utility.yul\":1558:1559 */\n 0x00\n /* \"#utility.yul\":1547:1556 */\n dup4\n /* \"#utility.yul\":1543:1560 */\n add\n /* \"#utility.yul\":1530:1561 */\n calldataload\n /* \"#utility.yul\":1588:1606 */\n 0xffffffffffffffff\n /* \"#utility.yul\":1580:1586 */\n dup2\n /* \"#utility.yul\":1577:1607 */\n gt\n /* \"#utility.yul\":1574:1691 */\n iszero\n tag_96\n jumpi\n /* \"#utility.yul\":1610:1689 */\n tag_97\n tag_43\n jump\t// in\n tag_97:\n /* \"#utility.yul\":1574:1691 */\n tag_96:\n /* \"#utility.yul\":1723:1788 */\n tag_98\n /* \"#utility.yul\":1780:1787 */\n dup6\n /* \"#utility.yul\":1771:1777 */\n dup3\n /* \"#utility.yul\":1760:1769 */\n dup7\n /* \"#utility.yul\":1756:1778 */\n add\n /* \"#utility.yul\":1723:1788 */\n tag_47\n jump\t// in\n tag_98:\n /* \"#utility.yul\":1705:1788 */\n swap3\n pop\n swap3\n pop\n /* \"#utility.yul\":1501:1798 */\n pop\n /* \"#utility.yul\":1276:1805 */\n swap3\n pop\n swap3\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1811:1937 */\n tag_48:\n /* \"#utility.yul\":1848:1855 */\n 0x00\n /* \"#utility.yul\":1888:1930 */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":1881:1886 */\n dup3\n /* \"#utility.yul\":1877:1931 */\n and\n /* \"#utility.yul\":1866:1931 */\n swap1\n pop\n /* \"#utility.yul\":1811:1937 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1943:2039 */\n tag_49:\n /* \"#utility.yul\":1980:1987 */\n 0x00\n /* \"#utility.yul\":2009:2033 */\n tag_101\n /* \"#utility.yul\":2027:2032 */\n dup3\n /* \"#utility.yul\":2009:2033 */\n tag_48\n jump\t// in\n tag_101:\n /* \"#utility.yul\":1998:2033 */\n swap1\n pop\n /* \"#utility.yul\":1943:2039 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2045:2163 */\n tag_50:\n /* \"#utility.yul\":2132:2156 */\n tag_103\n /* \"#utility.yul\":2150:2155 */\n dup2\n /* \"#utility.yul\":2132:2156 */\n tag_49\n jump\t// in\n tag_103:\n /* \"#utility.yul\":2127:2130 */\n dup3\n /* \"#utility.yul\":2120:2157 */\n mstore\n /* \"#utility.yul\":2045:2163 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2169:2391 */\n tag_14:\n /* \"#utility.yul\":2262:2266 */\n 0x00\n /* \"#utility.yul\":2300:2302 */\n 0x20\n /* \"#utility.yul\":2289:2298 */\n dup3\n /* \"#utility.yul\":2285:2303 */\n add\n /* \"#utility.yul\":2277:2303 */\n swap1\n pop\n /* \"#utility.yul\":2313:2384 */\n tag_105\n /* \"#utility.yul\":2381:2382 */\n 0x00\n /* \"#utility.yul\":2370:2379 */\n dup4\n /* \"#utility.yul\":2366:2383 */\n add\n /* \"#utility.yul\":2357:2363 */\n dup5\n /* \"#utility.yul\":2313:2384 */\n tag_50\n jump\t// in\n tag_105:\n /* \"#utility.yul\":2169:2391 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2397:2496 */\n tag_51:\n /* \"#utility.yul\":2449:2455 */\n 0x00\n /* \"#utility.yul\":2483:2488 */\n dup2\n /* \"#utility.yul\":2477:2489 */\n mload\n /* \"#utility.yul\":2467:2489 */\n swap1\n pop\n /* \"#utility.yul\":2397:2496 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2502:2671 */\n tag_52:\n /* \"#utility.yul\":2586:2597 */\n 0x00\n /* \"#utility.yul\":2620:2626 */\n dup3\n /* \"#utility.yul\":2615:2618 */\n dup3\n /* \"#utility.yul\":2608:2627 */\n mstore\n /* \"#utility.yul\":2660:2664 */\n 0x20\n /* \"#utility.yul\":2655:2658 */\n dup3\n /* \"#utility.yul\":2651:2665 */\n add\n /* \"#utility.yul\":2636:2665 */\n swap1\n pop\n /* \"#utility.yul\":2502:2671 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2677:2923 */\n tag_53:\n /* \"#utility.yul\":2758:2759 */\n 0x00\n /* \"#utility.yul\":2768:2881 */\n tag_109:\n /* \"#utility.yul\":2782:2788 */\n dup4\n /* \"#utility.yul\":2779:2780 */\n dup2\n /* \"#utility.yul\":2776:2789 */\n lt\n /* \"#utility.yul\":2768:2881 */\n iszero\n tag_111\n jumpi\n /* \"#utility.yul\":2867:2868 */\n dup1\n /* \"#utility.yul\":2862:2865 */\n dup3\n /* \"#utility.yul\":2858:2869 */\n add\n /* \"#utility.yul\":2852:2870 */\n mload\n /* \"#utility.yul\":2848:2849 */\n dup2\n /* \"#utility.yul\":2843:2846 */\n dup5\n /* \"#utility.yul\":2839:2850 */\n add\n /* \"#utility.yul\":2832:2871 */\n mstore\n /* \"#utility.yul\":2804:2806 */\n 0x20\n /* \"#utility.yul\":2801:2802 */\n dup2\n /* \"#utility.yul\":2797:2807 */\n add\n /* \"#utility.yul\":2792:2807 */\n swap1\n pop\n /* \"#utility.yul\":2768:2881 */\n jump(tag_109)\n tag_111:\n /* \"#utility.yul\":2915:2916 */\n 0x00\n /* \"#utility.yul\":2906:2912 */\n dup5\n /* \"#utility.yul\":2901:2904 */\n dup5\n /* \"#utility.yul\":2897:2913 */\n add\n /* \"#utility.yul\":2890:2917 */\n mstore\n /* \"#utility.yul\":2739:2923 */\n pop\n /* \"#utility.yul\":2677:2923 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2929:3031 */\n tag_54:\n /* \"#utility.yul\":2970:2976 */\n 0x00\n /* \"#utility.yul\":3021:3023 */\n 0x1f\n /* \"#utility.yul\":3017:3024 */\n not\n /* \"#utility.yul\":3012:3014 */\n 0x1f\n /* \"#utility.yul\":3005:3010 */\n dup4\n /* \"#utility.yul\":3001:3015 */\n add\n /* \"#utility.yul\":2997:3025 */\n and\n /* \"#utility.yul\":2987:3025 */\n swap1\n pop\n /* \"#utility.yul\":2929:3031 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3037:3414 */\n tag_55:\n /* \"#utility.yul\":3125:3128 */\n 0x00\n /* \"#utility.yul\":3153:3192 */\n tag_114\n /* \"#utility.yul\":3186:3191 */\n dup3\n /* \"#utility.yul\":3153:3192 */\n tag_51\n jump\t// in\n tag_114:\n /* \"#utility.yul\":3208:3279 */\n tag_115\n /* \"#utility.yul\":3272:3278 */\n dup2\n /* \"#utility.yul\":3267:3270 */\n dup6\n /* \"#utility.yul\":3208:3279 */\n tag_52\n jump\t// in\n tag_115:\n /* \"#utility.yul\":3201:3279 */\n swap4\n pop\n /* \"#utility.yul\":3288:3353 */\n tag_116\n /* \"#utility.yul\":3346:3352 */\n dup2\n /* \"#utility.yul\":3341:3344 */\n dup6\n /* \"#utility.yul\":3334:3338 */\n 0x20\n /* \"#utility.yul\":3327:3332 */\n dup7\n /* \"#utility.yul\":3323:3339 */\n add\n /* \"#utility.yul\":3288:3353 */\n tag_53\n jump\t// in\n tag_116:\n /* \"#utility.yul\":3378:3407 */\n tag_117\n /* \"#utility.yul\":3400:3406 */\n dup2\n /* \"#utility.yul\":3378:3407 */\n tag_54\n jump\t// in\n tag_117:\n /* \"#utility.yul\":3373:3376 */\n dup5\n /* \"#utility.yul\":3369:3408 */\n add\n /* \"#utility.yul\":3362:3408 */\n swap2\n pop\n /* \"#utility.yul\":3129:3414 */\n pop\n /* \"#utility.yul\":3037:3414 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3420:3733 */\n tag_18:\n /* \"#utility.yul\":3533:3537 */\n 0x00\n /* \"#utility.yul\":3571:3573 */\n 0x20\n /* \"#utility.yul\":3560:3569 */\n dup3\n /* \"#utility.yul\":3556:3574 */\n add\n /* \"#utility.yul\":3548:3574 */\n swap1\n pop\n /* \"#utility.yul\":3620:3629 */\n dup2\n /* \"#utility.yul\":3614:3618 */\n dup2\n /* \"#utility.yul\":3610:3630 */\n sub\n /* \"#utility.yul\":3606:3607 */\n 0x00\n /* \"#utility.yul\":3595:3604 */\n dup4\n /* \"#utility.yul\":3591:3608 */\n add\n /* \"#utility.yul\":3584:3631 */\n mstore\n /* \"#utility.yul\":3648:3726 */\n tag_119\n /* \"#utility.yul\":3721:3725 */\n dup2\n /* \"#utility.yul\":3712:3718 */\n dup5\n /* \"#utility.yul\":3648:3726 */\n tag_55\n jump\t// in\n tag_119:\n /* \"#utility.yul\":3640:3726 */\n swap1\n pop\n /* \"#utility.yul\":3420:3733 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3739:3861 */\n tag_56:\n /* \"#utility.yul\":3812:3836 */\n tag_121\n /* \"#utility.yul\":3830:3835 */\n dup2\n /* \"#utility.yul\":3812:3836 */\n tag_49\n jump\t// in\n tag_121:\n /* \"#utility.yul\":3805:3810 */\n dup2\n /* \"#utility.yul\":3802:3837 */\n eq\n /* \"#utility.yul\":3792:3855 */\n tag_122\n jumpi\n /* \"#utility.yul\":3851:3852 */\n 0x00\n /* \"#utility.yul\":3848:3849 */\n dup1\n /* \"#utility.yul\":3841:3853 */\n revert\n /* \"#utility.yul\":3792:3855 */\n tag_122:\n /* \"#utility.yul\":3739:3861 */\n pop\n jump\t// out\n /* \"#utility.yul\":3867:4006 */\n tag_57:\n /* \"#utility.yul\":3913:3918 */\n 0x00\n /* \"#utility.yul\":3951:3957 */\n dup2\n /* \"#utility.yul\":3938:3958 */\n calldataload\n /* \"#utility.yul\":3929:3958 */\n swap1\n pop\n /* \"#utility.yul\":3967:4000 */\n tag_124\n /* \"#utility.yul\":3994:3999 */\n dup2\n /* \"#utility.yul\":3967:4000 */\n tag_56\n jump\t// in\n tag_124:\n /* \"#utility.yul\":3867:4006 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":4012:4341 */\n tag_21:\n /* \"#utility.yul\":4071:4077 */\n 0x00\n /* \"#utility.yul\":4120:4122 */\n 0x20\n /* \"#utility.yul\":4108:4117 */\n dup3\n /* \"#utility.yul\":4099:4106 */\n dup5\n /* \"#utility.yul\":4095:4118 */\n sub\n /* \"#utility.yul\":4091:4123 */\n slt\n /* \"#utility.yul\":4088:4207 */\n iszero\n tag_126\n jumpi\n /* \"#utility.yul\":4126:4205 */\n tag_127\n tag_42\n jump\t// in\n tag_127:\n /* \"#utility.yul\":4088:4207 */\n tag_126:\n /* \"#utility.yul\":4246:4247 */\n 0x00\n /* \"#utility.yul\":4271:4324 */\n tag_128\n /* \"#utility.yul\":4316:4323 */\n dup5\n /* \"#utility.yul\":4307:4313 */\n dup3\n /* \"#utility.yul\":4296:4305 */\n dup6\n /* \"#utility.yul\":4292:4314 */\n add\n /* \"#utility.yul\":4271:4324 */\n tag_57\n jump\t// in\n tag_128:\n /* \"#utility.yul\":4261:4324 */\n swap2\n pop\n /* \"#utility.yul\":4217:4334 */\n pop\n /* \"#utility.yul\":4012:4341 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":4347:4520 */\n tag_58:\n /* \"#utility.yul\":4487:4512 */\n 0x43616c6c6572206973206e6f7420746865206f776e6572000000000000000000\n /* \"#utility.yul\":4483:4484 */\n 0x00\n /* \"#utility.yul\":4475:4481 */\n dup3\n /* \"#utility.yul\":4471:4485 */\n add\n /* \"#utility.yul\":4464:4513 */\n mstore\n /* \"#utility.yul\":4347:4520 */\n pop\n jump\t// out\n /* \"#utility.yul\":4526:4892 */\n tag_59:\n /* \"#utility.yul\":4668:4671 */\n 0x00\n /* \"#utility.yul\":4689:4756 */\n tag_131\n /* \"#utility.yul\":4753:4755 */\n 0x17\n /* \"#utility.yul\":4748:4751 */\n dup4\n /* \"#utility.yul\":4689:4756 */\n tag_52\n jump\t// in\n tag_131:\n /* \"#utility.yul\":4682:4756 */\n swap2\n pop\n /* \"#utility.yul\":4765:4858 */\n tag_132\n /* \"#utility.yul\":4854:4857 */\n dup3\n /* \"#utility.yul\":4765:4858 */\n tag_58\n jump\t// in\n tag_132:\n /* \"#utility.yul\":4883:4885 */\n 0x20\n /* \"#utility.yul\":4878:4881 */\n dup3\n /* \"#utility.yul\":4874:4886 */\n add\n /* \"#utility.yul\":4867:4886 */\n swap1\n pop\n /* \"#utility.yul\":4526:4892 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":4898:5317 */\n tag_26:\n /* \"#utility.yul\":5064:5068 */\n 0x00\n /* \"#utility.yul\":5102:5104 */\n 0x20\n /* \"#utility.yul\":5091:5100 */\n dup3\n /* \"#utility.yul\":5087:5105 */\n add\n /* \"#utility.yul\":5079:5105 */\n swap1\n pop\n /* \"#utility.yul\":5151:5160 */\n dup2\n /* \"#utility.yul\":5145:5149 */\n dup2\n /* \"#utility.yul\":5141:5161 */\n sub\n /* \"#utility.yul\":5137:5138 */\n 0x00\n /* \"#utility.yul\":5126:5135 */\n dup4\n /* \"#utility.yul\":5122:5139 */\n add\n /* \"#utility.yul\":5115:5162 */\n mstore\n /* \"#utility.yul\":5179:5310 */\n tag_134\n /* \"#utility.yul\":5305:5309 */\n dup2\n /* \"#utility.yul\":5179:5310 */\n tag_59\n jump\t// in\n tag_134:\n /* \"#utility.yul\":5171:5310 */\n swap1\n pop\n /* \"#utility.yul\":4898:5317 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":5323:5420 */\n tag_60:\n /* \"#utility.yul\":5382:5388 */\n 0x00\n /* \"#utility.yul\":5410:5413 */\n dup3\n /* \"#utility.yul\":5400:5413 */\n swap1\n pop\n /* \"#utility.yul\":5323:5420 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":5426:5606 */\n tag_61:\n /* \"#utility.yul\":5474:5551 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":5471:5472 */\n 0x00\n /* \"#utility.yul\":5464:5552 */\n mstore\n /* \"#utility.yul\":5571:5575 */\n 0x41\n /* \"#utility.yul\":5568:5569 */\n 0x04\n /* \"#utility.yul\":5561:5576 */\n mstore\n /* \"#utility.yul\":5595:5599 */\n 0x24\n /* \"#utility.yul\":5592:5593 */\n 0x00\n /* \"#utility.yul\":5585:5600 */\n revert\n /* \"#utility.yul\":5612:5792 */\n tag_62:\n /* \"#utility.yul\":5660:5737 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":5657:5658 */\n 0x00\n /* \"#utility.yul\":5650:5738 */\n mstore\n /* \"#utility.yul\":5757:5761 */\n 0x22\n /* \"#utility.yul\":5754:5755 */\n 0x04\n /* \"#utility.yul\":5747:5762 */\n mstore\n /* \"#utility.yul\":5781:5785 */\n 0x24\n /* \"#utility.yul\":5778:5779 */\n 0x00\n /* \"#utility.yul\":5771:5786 */\n revert\n /* \"#utility.yul\":5798:6118 */\n tag_32:\n /* \"#utility.yul\":5842:5848 */\n 0x00\n /* \"#utility.yul\":5879:5880 */\n 0x02\n /* \"#utility.yul\":5873:5877 */\n dup3\n /* \"#utility.yul\":5869:5881 */\n div\n /* \"#utility.yul\":5859:5881 */\n swap1\n pop\n /* \"#utility.yul\":5926:5927 */\n 0x01\n /* \"#utility.yul\":5920:5924 */\n dup3\n /* \"#utility.yul\":5916:5928 */\n and\n /* \"#utility.yul\":5947:5965 */\n dup1\n /* \"#utility.yul\":5937:6018 */\n tag_139\n jumpi\n /* \"#utility.yul\":6003:6007 */\n 0x7f\n /* \"#utility.yul\":5995:6001 */\n dup3\n /* \"#utility.yul\":5991:6008 */\n and\n /* \"#utility.yul\":5981:6008 */\n swap2\n pop\n /* \"#utility.yul\":5937:6018 */\n tag_139:\n /* \"#utility.yul\":6065:6067 */\n 0x20\n /* \"#utility.yul\":6057:6063 */\n dup3\n /* \"#utility.yul\":6054:6068 */\n lt\n /* \"#utility.yul\":6034:6052 */\n dup2\n /* \"#utility.yul\":6031:6069 */\n sub\n /* \"#utility.yul\":6028:6112 */\n tag_140\n jumpi\n /* \"#utility.yul\":6084:6102 */\n tag_141\n tag_62\n jump\t// in\n tag_141:\n /* \"#utility.yul\":6028:6112 */\n tag_140:\n /* \"#utility.yul\":5849:6118 */\n pop\n /* \"#utility.yul\":5798:6118 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":6124:6265 */\n tag_63:\n /* \"#utility.yul\":6173:6177 */\n 0x00\n /* \"#utility.yul\":6196:6199 */\n dup2\n /* \"#utility.yul\":6188:6199 */\n swap1\n pop\n /* \"#utility.yul\":6219:6222 */\n dup2\n /* \"#utility.yul\":6216:6217 */\n 0x00\n /* \"#utility.yul\":6209:6223 */\n mstore\n /* \"#utility.yul\":6253:6257 */\n 0x20\n /* \"#utility.yul\":6250:6251 */\n 0x00\n /* \"#utility.yul\":6240:6258 */\n keccak256\n /* \"#utility.yul\":6232:6258 */\n swap1\n pop\n /* \"#utility.yul\":6124:6265 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":6271:6364 */\n tag_64:\n /* \"#utility.yul\":6308:6314 */\n 0x00\n /* \"#utility.yul\":6355:6357 */\n 0x20\n /* \"#utility.yul\":6350:6352 */\n 0x1f\n /* \"#utility.yul\":6343:6348 */\n dup4\n /* \"#utility.yul\":6339:6353 */\n add\n /* \"#utility.yul\":6335:6358 */\n div\n /* \"#utility.yul\":6325:6358 */\n swap1\n pop\n /* \"#utility.yul\":6271:6364 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":6370:6477 */\n tag_65:\n /* \"#utility.yul\":6414:6422 */\n 0x00\n /* \"#utility.yul\":6464:6469 */\n dup3\n /* \"#utility.yul\":6458:6462 */\n dup3\n /* \"#utility.yul\":6454:6470 */\n shl\n /* \"#utility.yul\":6433:6470 */\n swap1\n pop\n /* \"#utility.yul\":6370:6477 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":6483:6876 */\n tag_66:\n /* \"#utility.yul\":6552:6558 */\n 0x00\n /* \"#utility.yul\":6602:6603 */\n 0x08\n /* \"#utility.yul\":6590:6600 */\n dup4\n /* \"#utility.yul\":6586:6604 */\n mul\n /* \"#utility.yul\":6625:6722 */\n tag_146\n /* \"#utility.yul\":6655:6721 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":6644:6653 */\n dup3\n /* \"#utility.yul\":6625:6722 */\n tag_65\n jump\t// in\n tag_146:\n /* \"#utility.yul\":6743:6782 */\n tag_147\n /* \"#utility.yul\":6773:6781 */\n dup7\n /* \"#utility.yul\":6762:6771 */\n dup4\n /* \"#utility.yul\":6743:6782 */\n tag_65\n jump\t// in\n tag_147:\n /* \"#utility.yul\":6731:6782 */\n swap6\n pop\n /* \"#utility.yul\":6815:6819 */\n dup1\n /* \"#utility.yul\":6811:6820 */\n not\n /* \"#utility.yul\":6804:6809 */\n dup5\n /* \"#utility.yul\":6800:6821 */\n and\n /* \"#utility.yul\":6791:6821 */\n swap4\n pop\n /* \"#utility.yul\":6864:6868 */\n dup1\n /* \"#utility.yul\":6854:6862 */\n dup7\n /* \"#utility.yul\":6850:6869 */\n and\n /* \"#utility.yul\":6843:6848 */\n dup5\n /* \"#utility.yul\":6840:6870 */\n or\n /* \"#utility.yul\":6830:6870 */\n swap3\n pop\n /* \"#utility.yul\":6559:6876 */\n pop\n pop\n /* \"#utility.yul\":6483:6876 */\n swap4\n swap3\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":6882:6959 */\n tag_67:\n /* \"#utility.yul\":6919:6926 */\n 0x00\n /* \"#utility.yul\":6948:6953 */\n dup2\n /* \"#utility.yul\":6937:6953 */\n swap1\n pop\n /* \"#utility.yul\":6882:6959 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":6965:7025 */\n tag_68:\n /* \"#utility.yul\":6993:6996 */\n 0x00\n /* \"#utility.yul\":7014:7019 */\n dup2\n /* \"#utility.yul\":7007:7019 */\n swap1\n pop\n /* \"#utility.yul\":6965:7025 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":7031:7173 */\n tag_69:\n /* \"#utility.yul\":7081:7090 */\n 0x00\n /* \"#utility.yul\":7114:7167 */\n tag_151\n /* \"#utility.yul\":7132:7166 */\n tag_152\n /* \"#utility.yul\":7141:7165 */\n tag_153\n /* \"#utility.yul\":7159:7164 */\n dup5\n /* \"#utility.yul\":7141:7165 */\n tag_67\n jump\t// in\n tag_153:\n /* \"#utility.yul\":7132:7166 */\n tag_68\n jump\t// in\n tag_152:\n /* \"#utility.yul\":7114:7167 */\n tag_67\n jump\t// in\n tag_151:\n /* \"#utility.yul\":7101:7167 */\n swap1\n pop\n /* \"#utility.yul\":7031:7173 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":7179:7254 */\n tag_70:\n /* \"#utility.yul\":7222:7225 */\n 0x00\n /* \"#utility.yul\":7243:7248 */\n dup2\n /* \"#utility.yul\":7236:7248 */\n swap1\n pop\n /* \"#utility.yul\":7179:7254 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":7260:7529 */\n tag_71:\n /* \"#utility.yul\":7370:7409 */\n tag_156\n /* \"#utility.yul\":7401:7408 */\n dup4\n /* \"#utility.yul\":7370:7409 */\n tag_69\n jump\t// in\n tag_156:\n /* \"#utility.yul\":7431:7522 */\n tag_157\n /* \"#utility.yul\":7480:7521 */\n tag_158\n /* \"#utility.yul\":7504:7520 */\n dup3\n /* \"#utility.yul\":7480:7521 */\n tag_70\n jump\t// in\n tag_158:\n /* \"#utility.yul\":7472:7478 */\n dup5\n /* \"#utility.yul\":7465:7469 */\n dup5\n /* \"#utility.yul\":7459:7470 */\n sload\n /* \"#utility.yul\":7431:7522 */\n tag_66\n jump\t// in\n tag_157:\n /* \"#utility.yul\":7425:7429 */\n dup3\n /* \"#utility.yul\":7418:7523 */\n sstore\n /* \"#utility.yul\":7336:7529 */\n pop\n /* \"#utility.yul\":7260:7529 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":7535:7608 */\n tag_72:\n /* \"#utility.yul\":7580:7583 */\n 0x00\n /* \"#utility.yul\":7535:7608 */\n swap1\n jump\t// out\n /* \"#utility.yul\":7614:7803 */\n tag_73:\n /* \"#utility.yul\":7691:7723 */\n tag_161\n tag_72\n jump\t// in\n tag_161:\n /* \"#utility.yul\":7732:7797 */\n tag_162\n /* \"#utility.yul\":7790:7796 */\n dup2\n /* \"#utility.yul\":7782:7788 */\n dup5\n /* \"#utility.yul\":7776:7780 */\n dup5\n /* \"#utility.yul\":7732:7797 */\n tag_71\n jump\t// in\n tag_162:\n /* \"#utility.yul\":7667:7803 */\n pop\n /* \"#utility.yul\":7614:7803 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":7809:7995 */\n tag_74:\n /* \"#utility.yul\":7869:7989 */\n tag_164:\n /* \"#utility.yul\":7886:7889 */\n dup2\n /* \"#utility.yul\":7879:7884 */\n dup2\n /* \"#utility.yul\":7876:7890 */\n lt\n /* \"#utility.yul\":7869:7989 */\n iszero\n tag_166\n jumpi\n /* \"#utility.yul\":7940:7979 */\n tag_167\n /* \"#utility.yul\":7977:7978 */\n 0x00\n /* \"#utility.yul\":7970:7975 */\n dup3\n /* \"#utility.yul\":7940:7979 */\n tag_73\n jump\t// in\n tag_167:\n /* \"#utility.yul\":7913:7914 */\n 0x01\n /* \"#utility.yul\":7906:7911 */\n dup2\n /* \"#utility.yul\":7902:7915 */\n add\n /* \"#utility.yul\":7893:7915 */\n swap1\n pop\n /* \"#utility.yul\":7869:7989 */\n jump(tag_164)\n tag_166:\n /* \"#utility.yul\":7809:7995 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":8001:8544 */\n tag_75:\n /* \"#utility.yul\":8102:8104 */\n 0x1f\n /* \"#utility.yul\":8097:8100 */\n dup3\n /* \"#utility.yul\":8094:8105 */\n gt\n /* \"#utility.yul\":8091:8537 */\n iszero\n tag_169\n jumpi\n /* \"#utility.yul\":8136:8174 */\n tag_170\n /* \"#utility.yul\":8168:8173 */\n dup2\n /* \"#utility.yul\":8136:8174 */\n tag_63\n jump\t// in\n tag_170:\n /* \"#utility.yul\":8220:8249 */\n tag_171\n /* \"#utility.yul\":8238:8248 */\n dup5\n /* \"#utility.yul\":8220:8249 */\n tag_64\n jump\t// in\n tag_171:\n /* \"#utility.yul\":8210:8218 */\n dup2\n /* \"#utility.yul\":8206:8250 */\n add\n /* \"#utility.yul\":8403:8405 */\n 0x20\n /* \"#utility.yul\":8391:8401 */\n dup6\n /* \"#utility.yul\":8388:8406 */\n lt\n /* \"#utility.yul\":8385:8434 */\n iszero\n tag_172\n jumpi\n /* \"#utility.yul\":8424:8432 */\n dup2\n /* \"#utility.yul\":8409:8432 */\n swap1\n pop\n /* \"#utility.yul\":8385:8434 */\n tag_172:\n /* \"#utility.yul\":8447:8527 */\n tag_173\n /* \"#utility.yul\":8503:8525 */\n tag_174\n /* \"#utility.yul\":8521:8524 */\n dup6\n /* \"#utility.yul\":8503:8525 */\n tag_64\n jump\t// in\n tag_174:\n /* \"#utility.yul\":8493:8501 */\n dup4\n /* \"#utility.yul\":8489:8526 */\n add\n /* \"#utility.yul\":8476:8487 */\n dup3\n /* \"#utility.yul\":8447:8527 */\n tag_74\n jump\t// in\n tag_173:\n /* \"#utility.yul\":8106:8537 */\n pop\n pop\n /* \"#utility.yul\":8091:8537 */\n tag_169:\n /* \"#utility.yul\":8001:8544 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":8550:8667 */\n tag_76:\n /* \"#utility.yul\":8604:8612 */\n 0x00\n /* \"#utility.yul\":8654:8659 */\n dup3\n /* \"#utility.yul\":8648:8652 */\n dup3\n /* \"#utility.yul\":8644:8660 */\n shr\n /* \"#utility.yul\":8623:8660 */\n swap1\n pop\n /* \"#utility.yul\":8550:8667 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":8673:8842 */\n tag_77:\n /* \"#utility.yul\":8717:8723 */\n 0x00\n /* \"#utility.yul\":8750:8801 */\n tag_177\n /* \"#utility.yul\":8798:8799 */\n 0x00\n /* \"#utility.yul\":8794:8800 */\n not\n /* \"#utility.yul\":8786:8791 */\n dup5\n /* \"#utility.yul\":8783:8784 */\n 0x08\n /* \"#utility.yul\":8779:8792 */\n mul\n /* \"#utility.yul\":8750:8801 */\n tag_76\n jump\t// in\n tag_177:\n /* \"#utility.yul\":8746:8802 */\n not\n /* \"#utility.yul\":8831:8835 */\n dup1\n /* \"#utility.yul\":8825:8829 */\n dup4\n /* \"#utility.yul\":8821:8836 */\n and\n /* \"#utility.yul\":8811:8836 */\n swap2\n pop\n /* \"#utility.yul\":8724:8842 */\n pop\n /* \"#utility.yul\":8673:8842 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":8847:9142 */\n tag_78:\n /* \"#utility.yul\":8923:8927 */\n 0x00\n /* \"#utility.yul\":9069:9098 */\n tag_179\n /* \"#utility.yul\":9094:9097 */\n dup4\n /* \"#utility.yul\":9088:9092 */\n dup4\n /* \"#utility.yul\":9069:9098 */\n tag_77\n jump\t// in\n tag_179:\n /* \"#utility.yul\":9061:9098 */\n swap2\n pop\n /* \"#utility.yul\":9131:9134 */\n dup3\n /* \"#utility.yul\":9128:9129 */\n 0x02\n /* \"#utility.yul\":9124:9135 */\n mul\n /* \"#utility.yul\":9118:9122 */\n dup3\n /* \"#utility.yul\":9115:9136 */\n or\n /* \"#utility.yul\":9107:9136 */\n swap1\n pop\n /* \"#utility.yul\":8847:9142 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":9147:10550 */\n tag_29:\n /* \"#utility.yul\":9271:9315 */\n tag_181\n /* \"#utility.yul\":9311:9314 */\n dup4\n /* \"#utility.yul\":9306:9309 */\n dup4\n /* \"#utility.yul\":9271:9315 */\n tag_60\n jump\t// in\n tag_181:\n /* \"#utility.yul\":9380:9398 */\n 0xffffffffffffffff\n /* \"#utility.yul\":9372:9378 */\n dup2\n /* \"#utility.yul\":9369:9399 */\n gt\n /* \"#utility.yul\":9366:9422 */\n iszero\n tag_182\n jumpi\n /* \"#utility.yul\":9402:9420 */\n tag_183\n tag_61\n jump\t// in\n tag_183:\n /* \"#utility.yul\":9366:9422 */\n tag_182:\n /* \"#utility.yul\":9446:9484 */\n tag_184\n /* \"#utility.yul\":9478:9482 */\n dup3\n /* \"#utility.yul\":9472:9483 */\n sload\n /* \"#utility.yul\":9446:9484 */\n tag_32\n jump\t// in\n tag_184:\n /* \"#utility.yul\":9531:9598 */\n tag_185\n /* \"#utility.yul\":9591:9597 */\n dup3\n /* \"#utility.yul\":9583:9589 */\n dup3\n /* \"#utility.yul\":9577:9581 */\n dup6\n /* \"#utility.yul\":9531:9598 */\n tag_75\n jump\t// in\n tag_185:\n /* \"#utility.yul\":9625:9626 */\n 0x00\n /* \"#utility.yul\":9654:9656 */\n 0x1f\n /* \"#utility.yul\":9646:9652 */\n dup4\n /* \"#utility.yul\":9643:9657 */\n gt\n /* \"#utility.yul\":9671:9672 */\n 0x01\n /* \"#utility.yul\":9666:10298 */\n dup2\n eq\n tag_187\n jumpi\n /* \"#utility.yul\":10342:10343 */\n 0x00\n /* \"#utility.yul\":10359:10365 */\n dup5\n /* \"#utility.yul\":10356:10440 */\n iszero\n tag_188\n jumpi\n /* \"#utility.yul\":10415:10424 */\n dup3\n /* \"#utility.yul\":10410:10413 */\n dup8\n /* \"#utility.yul\":10406:10425 */\n add\n /* \"#utility.yul\":10393:10426 */\n calldataload\n /* \"#utility.yul\":10384:10426 */\n swap1\n pop\n /* \"#utility.yul\":10356:10440 */\n tag_188:\n /* \"#utility.yul\":10466:10533 */\n tag_189\n /* \"#utility.yul\":10526:10532 */\n dup6\n /* \"#utility.yul\":10519:10524 */\n dup3\n /* \"#utility.yul\":10466:10533 */\n tag_78\n jump\t// in\n tag_189:\n /* \"#utility.yul\":10460:10464 */\n dup7\n /* \"#utility.yul\":10453:10534 */\n sstore\n /* \"#utility.yul\":10315:10544 */\n pop\n /* \"#utility.yul\":9636:10544 */\n jump(tag_186)\n /* \"#utility.yul\":9666:10298 */\n tag_187:\n /* \"#utility.yul\":9718:9722 */\n 0x1f\n /* \"#utility.yul\":9714:9723 */\n not\n /* \"#utility.yul\":9706:9712 */\n dup5\n /* \"#utility.yul\":9702:9724 */\n and\n /* \"#utility.yul\":9752:9789 */\n tag_190\n /* \"#utility.yul\":9784:9788 */\n dup7\n /* \"#utility.yul\":9752:9789 */\n tag_63\n jump\t// in\n tag_190:\n /* \"#utility.yul\":9811:9812 */\n 0x00\n /* \"#utility.yul\":9825:10040 */\n tag_191:\n /* \"#utility.yul\":9839:9846 */\n dup3\n /* \"#utility.yul\":9836:9837 */\n dup2\n /* \"#utility.yul\":9833:9847 */\n lt\n /* \"#utility.yul\":9825:10040 */\n iszero\n tag_193\n jumpi\n /* \"#utility.yul\":9925:9934 */\n dup5\n /* \"#utility.yul\":9920:9923 */\n dup10\n /* \"#utility.yul\":9916:9935 */\n add\n /* \"#utility.yul\":9903:9936 */\n calldataload\n /* \"#utility.yul\":9895:9901 */\n dup3\n /* \"#utility.yul\":9888:9937 */\n sstore\n /* \"#utility.yul\":9976:9977 */\n 0x01\n /* \"#utility.yul\":9968:9974 */\n dup3\n /* \"#utility.yul\":9964:9978 */\n add\n /* \"#utility.yul\":9954:9978 */\n swap2\n pop\n /* \"#utility.yul\":10023:10025 */\n 0x20\n /* \"#utility.yul\":10012:10021 */\n dup6\n /* \"#utility.yul\":10008:10026 */\n add\n /* \"#utility.yul\":9995:10026 */\n swap5\n pop\n /* \"#utility.yul\":9862:9866 */\n 0x20\n /* \"#utility.yul\":9859:9860 */\n dup2\n /* \"#utility.yul\":9855:9867 */\n add\n /* \"#utility.yul\":9850:9867 */\n swap1\n pop\n /* \"#utility.yul\":9825:10040 */\n jump(tag_191)\n tag_193:\n /* \"#utility.yul\":10068:10074 */\n dup7\n /* \"#utility.yul\":10059:10066 */\n dup4\n /* \"#utility.yul\":10056:10075 */\n lt\n /* \"#utility.yul\":10053:10239 */\n iszero\n tag_194\n jumpi\n /* \"#utility.yul\":10133:10142 */\n dup5\n /* \"#utility.yul\":10128:10131 */\n dup10\n /* \"#utility.yul\":10124:10143 */\n add\n /* \"#utility.yul\":10111:10144 */\n calldataload\n /* \"#utility.yul\":10176:10224 */\n tag_195\n /* \"#utility.yul\":10218:10222 */\n 0x1f\n /* \"#utility.yul\":10210:10216 */\n dup10\n /* \"#utility.yul\":10206:10223 */\n and\n /* \"#utility.yul\":10195:10204 */\n dup3\n /* \"#utility.yul\":10176:10224 */\n tag_77\n jump\t// in\n tag_195:\n /* \"#utility.yul\":10168:10174 */\n dup4\n /* \"#utility.yul\":10161:10225 */\n sstore\n /* \"#utility.yul\":10076:10239 */\n pop\n /* \"#utility.yul\":10053:10239 */\n tag_194:\n /* \"#utility.yul\":10285:10286 */\n 0x01\n /* \"#utility.yul\":10281:10282 */\n 0x02\n /* \"#utility.yul\":10273:10279 */\n dup9\n /* \"#utility.yul\":10269:10283 */\n mul\n /* \"#utility.yul\":10265:10287 */\n add\n /* \"#utility.yul\":10259:10263 */\n dup9\n /* \"#utility.yul\":10252:10288 */\n sstore\n /* \"#utility.yul\":9673:10298 */\n pop\n pop\n pop\n /* \"#utility.yul\":9636:10544 */\n tag_186:\n pop\n /* \"#utility.yul\":9246:10550 */\n pop\n pop\n pop\n /* \"#utility.yul\":9147:10550 */\n pop\n pop\n pop\n jump\t// out\n\n auxdata: 0xa264697066735822122017505db29d005a0ca7290a01a22e0cf9abe8543ef818189ad2148cbb95966fc064736f6c63430008120033\n}\n", | |
"bytecode": { | |
"functionDebugData": { | |
"@_18": { | |
"entryPoint": null, | |
"id": 18, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"array_dataslot_t_string_storage": { | |
"entryPoint": 318, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_length_t_string_memory_ptr": { | |
"entryPoint": 160, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"clean_up_bytearray_end_slots_t_string_storage": { | |
"entryPoint": 639, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"cleanup_t_uint256": { | |
"entryPoint": 454, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"clear_storage_range_t_bytes1": { | |
"entryPoint": 600, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"convert_t_uint256_to_t_uint256": { | |
"entryPoint": 474, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { | |
"entryPoint": 794, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"divide_by_32_ceil": { | |
"entryPoint": 339, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"extract_byte_array_length": { | |
"entryPoint": 265, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"extract_used_part_and_set_length_of_short_byte_array": { | |
"entryPoint": 764, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"identity": { | |
"entryPoint": 464, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"mask_bytes_dynamic": { | |
"entryPoint": 732, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"panic_error_0x22": { | |
"entryPoint": 218, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"panic_error_0x41": { | |
"entryPoint": 171, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"prepare_store_t_uint256": { | |
"entryPoint": 514, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"shift_left_dynamic": { | |
"entryPoint": 355, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"shift_right_unsigned_dynamic": { | |
"entryPoint": 719, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"storage_set_to_zero_t_uint256": { | |
"entryPoint": 572, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"update_byte_slice_dynamic32": { | |
"entryPoint": 368, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"update_storage_value_t_uint256_to_t_uint256": { | |
"entryPoint": 524, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"zero_value_for_split_t_uint256": { | |
"entryPoint": 567, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
} | |
}, | |
"generatedSources": [ | |
{ | |
"ast": { | |
"nodeType": "YulBlock", | |
"src": "0:5231:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "66:40:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "77:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "93:5:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "87:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "87:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "77:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "49:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "59:6:1", | |
"type": "" | |
} | |
], | |
"src": "7:99:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "140:152:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "157:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "160:77:1", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "150:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "150:88:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "150:88:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "254:1:1", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "257:4:1", | |
"type": "", | |
"value": "0x41" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "247:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "247:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "247:15:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "278:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "281:4:1", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "271:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "271:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "271:15:1" | |
} | |
] | |
}, | |
"name": "panic_error_0x41", | |
"nodeType": "YulFunctionDefinition", | |
"src": "112:180:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "326:152:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "343:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "346:77:1", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "336:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "336:88:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "336:88:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "440:1:1", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "443:4:1", | |
"type": "", | |
"value": "0x22" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "433:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "433:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "433:15:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "464:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "467:4:1", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "457:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "457:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "457:15:1" | |
} | |
] | |
}, | |
"name": "panic_error_0x22", | |
"nodeType": "YulFunctionDefinition", | |
"src": "298:180:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "535:269:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "545:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "559:4:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "565:1:1", | |
"type": "", | |
"value": "2" | |
} | |
], | |
"functionName": { | |
"name": "div", | |
"nodeType": "YulIdentifier", | |
"src": "555:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "555:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "545:6:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "576:38:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "606:4:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "612:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "602:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "602:12:1" | |
}, | |
"variables": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulTypedName", | |
"src": "580:18:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "653:51:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "667:27:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "681:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "689:4:1", | |
"type": "", | |
"value": "0x7f" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "677:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "677:17:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "667:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulIdentifier", | |
"src": "633:18:1" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "626:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "626:26:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "623:81:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "756:42:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x22", | |
"nodeType": "YulIdentifier", | |
"src": "770:16:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "770:18:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "770:18:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulIdentifier", | |
"src": "720:18:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "743:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "751:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "740:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "740:14:1" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "717:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "717:38:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "714:84:1" | |
} | |
] | |
}, | |
"name": "extract_byte_array_length", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "519:4:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "528:6:1", | |
"type": "" | |
} | |
], | |
"src": "484:320:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "864:87:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "874:11:1", | |
"value": { | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "882:3:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "874:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "902:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "905:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "895:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "895:14:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "895:14:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "918:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "936:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "939:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "keccak256", | |
"nodeType": "YulIdentifier", | |
"src": "926:9:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "926:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "918:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "ptr", | |
"nodeType": "YulTypedName", | |
"src": "851:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "859:4:1", | |
"type": "" | |
} | |
], | |
"src": "810:141:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1001:49:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1011:33:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1029:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1036:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1025:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1025:14:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1041:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "div", | |
"nodeType": "YulIdentifier", | |
"src": "1021:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1021:23:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "1011:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "984:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "994:6:1", | |
"type": "" | |
} | |
], | |
"src": "957:93:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1109:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1119:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulIdentifier", | |
"src": "1144:4:1" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1150:5:1" | |
} | |
], | |
"functionName": { | |
"name": "shl", | |
"nodeType": "YulIdentifier", | |
"src": "1140:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1140:16:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulIdentifier", | |
"src": "1119:8:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "shift_left_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulTypedName", | |
"src": "1084:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1090:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulTypedName", | |
"src": "1100:8:1", | |
"type": "" | |
} | |
], | |
"src": "1056:107:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1245:317:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1255:35:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBytes", | |
"nodeType": "YulIdentifier", | |
"src": "1276:10:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1288:1:1", | |
"type": "", | |
"value": "8" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "1272:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1272:18:1" | |
}, | |
"variables": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulTypedName", | |
"src": "1259:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1299:109:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulIdentifier", | |
"src": "1330:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1341:66:1", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "shift_left_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "1311:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1311:97:1" | |
}, | |
"variables": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulTypedName", | |
"src": "1303:4:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1417:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulIdentifier", | |
"src": "1448:9:1" | |
}, | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "1459:8:1" | |
} | |
], | |
"functionName": { | |
"name": "shift_left_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "1429:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1429:39:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "1417:8:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1477:30:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1490:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "1501:4:1" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "1497:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1497:9:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "1486:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1486:21:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1477:5:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1516:40:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1529:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "1540:8:1" | |
}, | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "1550:4:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "1536:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1536:19:1" | |
} | |
], | |
"functionName": { | |
"name": "or", | |
"nodeType": "YulIdentifier", | |
"src": "1526:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1526:30:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "1516:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "update_byte_slice_dynamic32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1206:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "shiftBytes", | |
"nodeType": "YulTypedName", | |
"src": "1213:10:1", | |
"type": "" | |
}, | |
{ | |
"name": "toInsert", | |
"nodeType": "YulTypedName", | |
"src": "1225:8:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "1238:6:1", | |
"type": "" | |
} | |
], | |
"src": "1169:393:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1613:32:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1623:16:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1634:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1623:7:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1595:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1605:7:1", | |
"type": "" | |
} | |
], | |
"src": "1568:77:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1683:28:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1693:12:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1700:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "1693:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "identity", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1669:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "1679:3:1", | |
"type": "" | |
} | |
], | |
"src": "1651:60:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1777:82:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1787:66:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1845:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "1827:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1827:24:1" | |
} | |
], | |
"functionName": { | |
"name": "identity", | |
"nodeType": "YulIdentifier", | |
"src": "1818:8:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1818:34:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "1800:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1800:53:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "converted", | |
"nodeType": "YulIdentifier", | |
"src": "1787:9:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "convert_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1757:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "converted", | |
"nodeType": "YulTypedName", | |
"src": "1767:9:1", | |
"type": "" | |
} | |
], | |
"src": "1717:142:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1912:28:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1922:12:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1929:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "1922:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "prepare_store_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1898:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "1908:3:1", | |
"type": "" | |
} | |
], | |
"src": "1865:75:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2022:193:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2032:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value_0", | |
"nodeType": "YulIdentifier", | |
"src": "2087:7:1" | |
} | |
], | |
"functionName": { | |
"name": "convert_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2056:30:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2056:39:1" | |
}, | |
"variables": [ | |
{ | |
"name": "convertedValue_0", | |
"nodeType": "YulTypedName", | |
"src": "2036:16:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "2111:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "2151:4:1" | |
} | |
], | |
"functionName": { | |
"name": "sload", | |
"nodeType": "YulIdentifier", | |
"src": "2145:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2145:11:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "2158:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "convertedValue_0", | |
"nodeType": "YulIdentifier", | |
"src": "2190:16:1" | |
} | |
], | |
"functionName": { | |
"name": "prepare_store_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2166:23:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2166:41:1" | |
} | |
], | |
"functionName": { | |
"name": "update_byte_slice_dynamic32", | |
"nodeType": "YulIdentifier", | |
"src": "2117:27:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2117:91:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "2104:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2104:105:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2104:105:1" | |
} | |
] | |
}, | |
"name": "update_storage_value_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "1999:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2005:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "value_0", | |
"nodeType": "YulTypedName", | |
"src": "2013:7:1", | |
"type": "" | |
} | |
], | |
"src": "1946:269:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2270:24:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2280:8:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2287:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "2280:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "zero_value_for_split_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "2266:3:1", | |
"type": "" | |
} | |
], | |
"src": "2221:73:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2353:136:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2363:46:1", | |
"value": { | |
"arguments": [], | |
"functionName": { | |
"name": "zero_value_for_split_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2377:30:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2377:32:1" | |
}, | |
"variables": [ | |
{ | |
"name": "zero_0", | |
"nodeType": "YulTypedName", | |
"src": "2367:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "2462:4:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "2468:6:1" | |
}, | |
{ | |
"name": "zero_0", | |
"nodeType": "YulIdentifier", | |
"src": "2476:6:1" | |
} | |
], | |
"functionName": { | |
"name": "update_storage_value_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2418:43:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2418:65:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2418:65:1" | |
} | |
] | |
}, | |
"name": "storage_set_to_zero_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "2339:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2345:6:1", | |
"type": "" | |
} | |
], | |
"src": "2300:189:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2545:136:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2612:63:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "2656:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2663:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "storage_set_to_zero_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2626:29:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2626:39:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2626:39:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "2565:5:1" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "2572:3:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "2562:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2562:14:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "2577:26:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2579:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "2592:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2599:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2588:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2588:13:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "2579:5:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "2559:2:1", | |
"statements": [] | |
}, | |
"src": "2555:120:1" | |
} | |
] | |
}, | |
"name": "clear_storage_range_t_bytes1", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "start", | |
"nodeType": "YulTypedName", | |
"src": "2533:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "2540:3:1", | |
"type": "" | |
} | |
], | |
"src": "2495:186:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2766:464:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2792:431:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2806:54:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "array", | |
"nodeType": "YulIdentifier", | |
"src": "2854:5:1" | |
} | |
], | |
"functionName": { | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "2822:31:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2822:38:1" | |
}, | |
"variables": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulTypedName", | |
"src": "2810:8:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2873:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "2896:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "startIndex", | |
"nodeType": "YulIdentifier", | |
"src": "2924:10:1" | |
} | |
], | |
"functionName": { | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulIdentifier", | |
"src": "2906:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2906:29:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2892:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2892:44:1" | |
}, | |
"variables": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulTypedName", | |
"src": "2877:11:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3093:27:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3095:23:1", | |
"value": { | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "3110:8:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulIdentifier", | |
"src": "3095:11:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "startIndex", | |
"nodeType": "YulIdentifier", | |
"src": "3077:10:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3089:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "3074:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3074:18:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "3071:49:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulIdentifier", | |
"src": "3162:11:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "3179:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "3207:3:1" | |
} | |
], | |
"functionName": { | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulIdentifier", | |
"src": "3189:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3189:22:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3175:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3175:37:1" | |
} | |
], | |
"functionName": { | |
"name": "clear_storage_range_t_bytes1", | |
"nodeType": "YulIdentifier", | |
"src": "3133:28:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3133:80:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3133:80:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "2783:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2788:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "2780:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2780:11:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "2777:446:1" | |
} | |
] | |
}, | |
"name": "clean_up_bytearray_end_slots_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "array", | |
"nodeType": "YulTypedName", | |
"src": "2742:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "2749:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "startIndex", | |
"nodeType": "YulTypedName", | |
"src": "2754:10:1", | |
"type": "" | |
} | |
], | |
"src": "2687:543:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3299:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3309:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulIdentifier", | |
"src": "3334:4:1" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3340:5:1" | |
} | |
], | |
"functionName": { | |
"name": "shr", | |
"nodeType": "YulIdentifier", | |
"src": "3330:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3330:16:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulIdentifier", | |
"src": "3309:8:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "shift_right_unsigned_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulTypedName", | |
"src": "3274:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3280:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulTypedName", | |
"src": "3290:8:1", | |
"type": "" | |
} | |
], | |
"src": "3236:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3410:118:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3420:68:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3469:1:1", | |
"type": "", | |
"value": "8" | |
}, | |
{ | |
"name": "bytes", | |
"nodeType": "YulIdentifier", | |
"src": "3472:5:1" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "3465:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3465:13:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3484:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "3480:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3480:6:1" | |
} | |
], | |
"functionName": { | |
"name": "shift_right_unsigned_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "3436:28:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3436:51:1" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "3432:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3432:56:1" | |
}, | |
"variables": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulTypedName", | |
"src": "3424:4:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3497:25:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "3511:4:1" | |
}, | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "3517:4:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "3507:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3507:15:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "3497:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "3387:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "bytes", | |
"nodeType": "YulTypedName", | |
"src": "3393:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "3403:6:1", | |
"type": "" | |
} | |
], | |
"src": "3359:169:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3614:214:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3747:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "3774:4:1" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "3780:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "3755:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3755:29:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "3747:4:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3793:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "3804:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3814:1:1", | |
"type": "", | |
"value": "2" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "3817:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "3810:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3810:11:1" | |
} | |
], | |
"functionName": { | |
"name": "or", | |
"nodeType": "YulIdentifier", | |
"src": "3801:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3801:21:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "used", | |
"nodeType": "YulIdentifier", | |
"src": "3793:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "extract_used_part_and_set_length_of_short_byte_array", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "3595:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "3601:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "used", | |
"nodeType": "YulTypedName", | |
"src": "3609:4:1", | |
"type": "" | |
} | |
], | |
"src": "3533:295:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3925:1303:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3936:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "3983:3:1" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "3950:32:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3950:37:1" | |
}, | |
"variables": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulTypedName", | |
"src": "3940:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4072:22:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x41", | |
"nodeType": "YulIdentifier", | |
"src": "4074:16:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4074:18:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4074:18:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4044:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4052:18:1", | |
"type": "", | |
"value": "0xffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "4041:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4041:30:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "4038:56:1" | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4104:52:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "4150:4:1" | |
} | |
], | |
"functionName": { | |
"name": "sload", | |
"nodeType": "YulIdentifier", | |
"src": "4144:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4144:11:1" | |
} | |
], | |
"functionName": { | |
"name": "extract_byte_array_length", | |
"nodeType": "YulIdentifier", | |
"src": "4118:25:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4118:38:1" | |
}, | |
"variables": [ | |
{ | |
"name": "oldLen", | |
"nodeType": "YulTypedName", | |
"src": "4108:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "4249:4:1" | |
}, | |
{ | |
"name": "oldLen", | |
"nodeType": "YulIdentifier", | |
"src": "4255:6:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4263:6:1" | |
} | |
], | |
"functionName": { | |
"name": "clean_up_bytearray_end_slots_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "4203:45:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4203:67:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4203:67:1" | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4280:18:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4297:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulTypedName", | |
"src": "4284:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4308:17:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4321:4:1", | |
"type": "", | |
"value": "0x20" | |
}, | |
"variableNames": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4308:9:1" | |
} | |
] | |
}, | |
{ | |
"cases": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4372:611:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4386:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4405:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4417:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "4413:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4413:9:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "4401:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4401:22:1" | |
}, | |
"variables": [ | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulTypedName", | |
"src": "4390:7:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4437:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "4483:4:1" | |
} | |
], | |
"functionName": { | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "4451:31:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4451:37:1" | |
}, | |
"variables": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulTypedName", | |
"src": "4441:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4501:10:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4510:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "i", | |
"nodeType": "YulTypedName", | |
"src": "4505:1:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4569:163:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4594:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "4612:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4617:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4608:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4608:19:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "4602:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4602:26:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "4587:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4587:42:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4587:42:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4646:24:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4660:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4668:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4656:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4656:14:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4646:6:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4687:31:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4704:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4715:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4700:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4700:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4687:9:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "4535:1:1" | |
}, | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulIdentifier", | |
"src": "4538:7:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "4532:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4532:14:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "4547:21:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4549:17:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "4558:1:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4561:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4554:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4554:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "4549:1:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "4528:3:1", | |
"statements": [] | |
}, | |
"src": "4524:208:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4768:156:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4786:43:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "4813:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "4818:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4809:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4809:19:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "4803:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4803:26:1" | |
}, | |
"variables": [ | |
{ | |
"name": "lastValue", | |
"nodeType": "YulTypedName", | |
"src": "4790:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4853:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "lastValue", | |
"nodeType": "YulIdentifier", | |
"src": "4880:9:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4895:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4903:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "4891:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4891:17:1" | |
} | |
], | |
"functionName": { | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "4861:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4861:48:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "4846:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4846:64:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4846:64:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulIdentifier", | |
"src": "4751:7:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4760:6:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "4748:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4748:19:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "4745:179:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "4944:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4958:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4966:1:1", | |
"type": "", | |
"value": "2" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "4954:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4954:14:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4970:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4950:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4950:22:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "4937:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4937:36:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4937:36:1" | |
} | |
] | |
}, | |
"nodeType": "YulCase", | |
"src": "4365:618:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4370:1:1", | |
"type": "", | |
"value": "1" | |
} | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5000:222:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "5014:14:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5027:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "5018:5:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5051:67:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5069:35:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "5088:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "5093:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5084:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5084:19:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "5078:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5078:26:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "5069:5:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "5044:6:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "5041:77:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "5138:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "5197:5:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "5204:6:1" | |
} | |
], | |
"functionName": { | |
"name": "extract_used_part_and_set_length_of_short_byte_array", | |
"nodeType": "YulIdentifier", | |
"src": "5144:52:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5144:67:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "5131:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5131:81:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5131:81:1" | |
} | |
] | |
}, | |
"nodeType": "YulCase", | |
"src": "4992:230:1", | |
"value": "default" | |
} | |
], | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "4345:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4353:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "4342:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4342:14:1" | |
}, | |
"nodeType": "YulSwitch", | |
"src": "4335:887:1" | |
} | |
] | |
}, | |
"name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "3914:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "src", | |
"nodeType": "YulTypedName", | |
"src": "3920:3:1", | |
"type": "" | |
} | |
], | |
"src": "3833:1395:1" | |
} | |
] | |
}, | |
"contents": "{\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\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 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 array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src) {\n\n let newLen := array_length_t_string_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", | |
"id": 1, | |
"language": "Yul", | |
"name": "#utility.yul" | |
} | |
], | |
"linkReferences": {}, | |
"object": "60806040523480156200001157600080fd5b506040518060400160405280600b81526020017f48656c6c6f20576f726c64000000000000000000000000000000000000000000815250600090816200005891906200031a565b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000401565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200012257607f821691505b602082108103620001385762000137620000da565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620001a27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000163565b620001ae868362000163565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620001fb620001f5620001ef84620001c6565b620001d0565b620001c6565b9050919050565b6000819050919050565b6200021783620001da565b6200022f620002268262000202565b84845462000170565b825550505050565b600090565b6200024662000237565b620002538184846200020c565b505050565b5b818110156200027b576200026f6000826200023c565b60018101905062000259565b5050565b601f821115620002ca5762000294816200013e565b6200029f8462000153565b81016020851015620002af578190505b620002c7620002be8562000153565b83018262000258565b50505b505050565b600082821c905092915050565b6000620002ef60001984600802620002cf565b1980831691505092915050565b60006200030a8383620002dc565b9150826002028217905092915050565b6200032582620000a0565b67ffffffffffffffff811115620003415762000340620000ab565b5b6200034d825462000109565b6200035a8282856200027f565b600060209050601f8311600181146200039257600084156200037d578287015190505b620003898582620002fc565b865550620003f9565b601f198416620003a2866200013e565b60005b82811015620003cc57848901518255600182019150602085019450602081019050620003a5565b86831015620003ec5784890151620003e8601f891682620002dc565b8355505b6001600288020188555050505b505050505050565b6108dc80620004116000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3a1f9d146100515780638da5cb5b1461006d578063c605f76c1461008b578063f2fde38b146100a9575b600080fd5b61006b60048036038101906100669190610366565b6100c5565b005b61007561016b565b60405161008291906103f4565b60405180910390f35b610093610191565b6040516100a0919061049f565b60405180910390f35b6100c360048036038101906100be91906104ed565b610223565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610155576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014c90610566565b60405180910390fd5b8181600091826101669291906107d6565b505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060600080546101a0906105ef565b80601f01602080910402602001604051908101604052809291908181526020018280546101cc906105ef565b80156102195780601f106101ee57610100808354040283529160200191610219565b820191906000526020600020905b8154815290600101906020018083116101fc57829003601f168201915b5050505050905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102aa90610566565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f84011261032657610325610301565b5b8235905067ffffffffffffffff81111561034357610342610306565b5b60208301915083600182028301111561035f5761035e61030b565b5b9250929050565b6000806020838503121561037d5761037c6102f7565b5b600083013567ffffffffffffffff81111561039b5761039a6102fc565b5b6103a785828601610310565b92509250509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103de826103b3565b9050919050565b6103ee816103d3565b82525050565b600060208201905061040960008301846103e5565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561044957808201518184015260208101905061042e565b60008484015250505050565b6000601f19601f8301169050919050565b60006104718261040f565b61047b818561041a565b935061048b81856020860161042b565b61049481610455565b840191505092915050565b600060208201905081810360008301526104b98184610466565b905092915050565b6104ca816103d3565b81146104d557600080fd5b50565b6000813590506104e7816104c1565b92915050565b600060208284031215610503576105026102f7565b5b6000610511848285016104d8565b91505092915050565b7f43616c6c6572206973206e6f7420746865206f776e6572000000000000000000600082015250565b600061055060178361041a565b915061055b8261051a565b602082019050919050565b6000602082019050818103600083015261057f81610543565b9050919050565b600082905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061060757607f821691505b60208210810361061a576106196105c0565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026106827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610645565b61068c8683610645565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006106d36106ce6106c9846106a4565b6106ae565b6106a4565b9050919050565b6000819050919050565b6106ed836106b8565b6107016106f9826106da565b848454610652565b825550505050565b600090565b610716610709565b6107218184846106e4565b505050565b5b818110156107455761073a60008261070e565b600181019050610727565b5050565b601f82111561078a5761075b81610620565b61076484610635565b81016020851015610773578190505b61078761077f85610635565b830182610726565b50505b505050565b600082821c905092915050565b60006107ad6000198460080261078f565b1980831691505092915050565b60006107c6838361079c565b9150826002028217905092915050565b6107e08383610586565b67ffffffffffffffff8111156107f9576107f8610591565b5b61080382546105ef565b61080e828285610749565b6000601f83116001811461083d576000841561082b578287013590505b61083585826107ba565b86555061089d565b601f19841661084b86610620565b60005b828110156108735784890135825560018201915060208501945060208101905061084e565b86831015610890578489013561088c601f89168261079c565b8355505b6001600288020188555050505b5050505050505056fea264697066735822122017505db29d005a0ca7290a01a22e0cf9abe8543ef818189ad2148cbb95966fc064736f6c63430008120033", | |
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xB DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x48656C6C6F20576F726C64000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x0 SWAP1 DUP2 PUSH3 0x58 SWAP2 SWAP1 PUSH3 0x31A JUMP JUMPDEST POP CALLER PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x401 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 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 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH3 0x122 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x138 JUMPI PUSH3 0x137 PUSH3 0xDA JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH3 0x1A2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH3 0x163 JUMP JUMPDEST PUSH3 0x1AE DUP7 DUP4 PUSH3 0x163 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x1FB PUSH3 0x1F5 PUSH3 0x1EF DUP5 PUSH3 0x1C6 JUMP JUMPDEST PUSH3 0x1D0 JUMP JUMPDEST PUSH3 0x1C6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH3 0x217 DUP4 PUSH3 0x1DA JUMP JUMPDEST PUSH3 0x22F PUSH3 0x226 DUP3 PUSH3 0x202 JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH3 0x170 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH3 0x246 PUSH3 0x237 JUMP JUMPDEST PUSH3 0x253 DUP2 DUP5 DUP5 PUSH3 0x20C JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x27B JUMPI PUSH3 0x26F PUSH1 0x0 DUP3 PUSH3 0x23C JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH3 0x259 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x2CA JUMPI PUSH3 0x294 DUP2 PUSH3 0x13E JUMP JUMPDEST PUSH3 0x29F DUP5 PUSH3 0x153 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH3 0x2AF JUMPI DUP2 SWAP1 POP JUMPDEST PUSH3 0x2C7 PUSH3 0x2BE DUP6 PUSH3 0x153 JUMP JUMPDEST DUP4 ADD DUP3 PUSH3 0x258 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x2EF PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH3 0x2CF JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x30A DUP4 DUP4 PUSH3 0x2DC JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH3 0x325 DUP3 PUSH3 0xA0 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH3 0x341 JUMPI PUSH3 0x340 PUSH3 0xAB JUMP JUMPDEST JUMPDEST PUSH3 0x34D DUP3 SLOAD PUSH3 0x109 JUMP JUMPDEST PUSH3 0x35A DUP3 DUP3 DUP6 PUSH3 0x27F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x392 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x37D JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH3 0x389 DUP6 DUP3 PUSH3 0x2FC JUMP JUMPDEST DUP7 SSTORE POP PUSH3 0x3F9 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH3 0x3A2 DUP7 PUSH3 0x13E JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x3CC JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH3 0x3A5 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH3 0x3EC JUMPI DUP5 DUP10 ADD MLOAD PUSH3 0x3E8 PUSH1 0x1F DUP10 AND DUP3 PUSH3 0x2DC JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH2 0x8DC DUP1 PUSH3 0x411 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 0x5D3A1F9D EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x6D JUMPI DUP1 PUSH4 0xC605F76C EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xA9 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x366 JUMP JUMPDEST PUSH2 0xC5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x75 PUSH2 0x16B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x82 SWAP2 SWAP1 PUSH2 0x3F4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x93 PUSH2 0x191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA0 SWAP2 SWAP1 PUSH2 0x49F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xBE SWAP2 SWAP1 PUSH2 0x4ED JUMP JUMPDEST PUSH2 0x223 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x155 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14C SWAP1 PUSH2 0x566 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 DUP2 PUSH1 0x0 SWAP2 DUP3 PUSH2 0x166 SWAP3 SWAP2 SWAP1 PUSH2 0x7D6 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x1A0 SWAP1 PUSH2 0x5EF 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 0x1CC SWAP1 PUSH2 0x5EF JUMP JUMPDEST DUP1 ISZERO PUSH2 0x219 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x219 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 0x1FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2B3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2AA SWAP1 PUSH2 0x566 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x326 JUMPI PUSH2 0x325 PUSH2 0x301 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x343 JUMPI PUSH2 0x342 PUSH2 0x306 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x35F JUMPI PUSH2 0x35E PUSH2 0x30B JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x37D JUMPI PUSH2 0x37C PUSH2 0x2F7 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x39B JUMPI PUSH2 0x39A PUSH2 0x2FC JUMP JUMPDEST JUMPDEST PUSH2 0x3A7 DUP6 DUP3 DUP7 ADD PUSH2 0x310 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3DE DUP3 PUSH2 0x3B3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3EE DUP2 PUSH2 0x3D3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x409 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3E5 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 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x449 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x42E JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x471 DUP3 PUSH2 0x40F JUMP JUMPDEST PUSH2 0x47B DUP2 DUP6 PUSH2 0x41A JUMP JUMPDEST SWAP4 POP PUSH2 0x48B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x42B JUMP JUMPDEST PUSH2 0x494 DUP2 PUSH2 0x455 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4B9 DUP2 DUP5 PUSH2 0x466 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4CA DUP2 PUSH2 0x3D3 JUMP JUMPDEST DUP2 EQ PUSH2 0x4D5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4E7 DUP2 PUSH2 0x4C1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x503 JUMPI PUSH2 0x502 PUSH2 0x2F7 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x511 DUP5 DUP3 DUP6 ADD PUSH2 0x4D8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F7420746865206F776E6572000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x550 PUSH1 0x17 DUP4 PUSH2 0x41A JUMP JUMPDEST SWAP2 POP PUSH2 0x55B DUP3 PUSH2 0x51A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x57F DUP2 PUSH2 0x543 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 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 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x607 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x61A JUMPI PUSH2 0x619 PUSH2 0x5C0 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x682 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x645 JUMP JUMPDEST PUSH2 0x68C DUP7 DUP4 PUSH2 0x645 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6D3 PUSH2 0x6CE PUSH2 0x6C9 DUP5 PUSH2 0x6A4 JUMP JUMPDEST PUSH2 0x6AE JUMP JUMPDEST PUSH2 0x6A4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6ED DUP4 PUSH2 0x6B8 JUMP JUMPDEST PUSH2 0x701 PUSH2 0x6F9 DUP3 PUSH2 0x6DA JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x652 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x716 PUSH2 0x709 JUMP JUMPDEST PUSH2 0x721 DUP2 DUP5 DUP5 PUSH2 0x6E4 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x745 JUMPI PUSH2 0x73A PUSH1 0x0 DUP3 PUSH2 0x70E JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x727 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x78A JUMPI PUSH2 0x75B DUP2 PUSH2 0x620 JUMP JUMPDEST PUSH2 0x764 DUP5 PUSH2 0x635 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x773 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x787 PUSH2 0x77F DUP6 PUSH2 0x635 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x726 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AD PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x78F JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7C6 DUP4 DUP4 PUSH2 0x79C JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x7E0 DUP4 DUP4 PUSH2 0x586 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7F9 JUMPI PUSH2 0x7F8 PUSH2 0x591 JUMP JUMPDEST JUMPDEST PUSH2 0x803 DUP3 SLOAD PUSH2 0x5EF JUMP JUMPDEST PUSH2 0x80E DUP3 DUP3 DUP6 PUSH2 0x749 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x83D JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x82B JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x835 DUP6 DUP3 PUSH2 0x7BA JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x89D JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x84B DUP7 PUSH2 0x620 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x873 JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x84E JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x890 JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x88C PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x79C JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 OR POP 0x5D 0xB2 SWAP14 STOP GAS 0xC 0xA7 0x29 EXP ADD LOG2 0x2E 0xC 0xF9 0xAB 0xE8 SLOAD RETURNDATACOPY 0xF8 XOR XOR SWAP11 0xD2 EQ DUP13 0xBB SWAP6 SWAP7 PUSH16 0xC064736F6C6343000812003300000000 ", | |
"sourceMap": "69:565:0:-:0;;;149:79;;;;;;;;;;173:20;;;;;;;;;;;;;;;;;:4;:20;;;;;;:::i;:::-;;211:10;203:5;;:18;;;;;;;;;;;;;;;;;;69:565;;7:99:1;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:180::-;160:77;157:1;150:88;257:4;254:1;247:15;281:4;278:1;271:15;298:180;346:77;343:1;336:88;443:4;440:1;433:15;467:4;464:1;457:15;484:320;528:6;565:1;559:4;555:12;545:22;;612:1;606:4;602:12;633:18;623:81;;689:4;681:6;677:17;667:27;;623:81;751:2;743:6;740:14;720:18;717:38;714:84;;770:18;;:::i;:::-;714:84;535:269;484:320;;;:::o;810:141::-;859:4;882:3;874:11;;905:3;902:1;895:14;939:4;936:1;926:18;918:26;;810:141;;;:::o;957:93::-;994:6;1041:2;1036;1029:5;1025:14;1021:23;1011:33;;957:93;;;:::o;1056:107::-;1100:8;1150:5;1144:4;1140:16;1119:37;;1056:107;;;;:::o;1169:393::-;1238:6;1288:1;1276:10;1272:18;1311:97;1341:66;1330:9;1311:97;:::i;:::-;1429:39;1459:8;1448:9;1429:39;:::i;:::-;1417:51;;1501:4;1497:9;1490:5;1486:21;1477:30;;1550:4;1540:8;1536:19;1529:5;1526:30;1516:40;;1245:317;;1169:393;;;;;:::o;1568:77::-;1605:7;1634:5;1623:16;;1568:77;;;:::o;1651:60::-;1679:3;1700:5;1693:12;;1651:60;;;:::o;1717:142::-;1767:9;1800:53;1818:34;1827:24;1845:5;1827:24;:::i;:::-;1818:34;:::i;:::-;1800:53;:::i;:::-;1787:66;;1717:142;;;:::o;1865:75::-;1908:3;1929:5;1922:12;;1865:75;;;:::o;1946:269::-;2056:39;2087:7;2056:39;:::i;:::-;2117:91;2166:41;2190:16;2166:41;:::i;:::-;2158:6;2151:4;2145:11;2117:91;:::i;:::-;2111:4;2104:105;2022:193;1946:269;;;:::o;2221:73::-;2266:3;2221:73;:::o;2300:189::-;2377:32;;:::i;:::-;2418:65;2476:6;2468;2462:4;2418:65;:::i;:::-;2353:136;2300:189;;:::o;2495:186::-;2555:120;2572:3;2565:5;2562:14;2555:120;;;2626:39;2663:1;2656:5;2626:39;:::i;:::-;2599:1;2592:5;2588:13;2579:22;;2555:120;;;2495:186;;:::o;2687:543::-;2788:2;2783:3;2780:11;2777:446;;;2822:38;2854:5;2822:38;:::i;:::-;2906:29;2924:10;2906:29;:::i;:::-;2896:8;2892:44;3089:2;3077:10;3074:18;3071:49;;;3110:8;3095:23;;3071:49;3133:80;3189:22;3207:3;3189:22;:::i;:::-;3179:8;3175:37;3162:11;3133:80;:::i;:::-;2792:431;;2777:446;2687:543;;;:::o;3236:117::-;3290:8;3340:5;3334:4;3330:16;3309:37;;3236:117;;;;:::o;3359:169::-;3403:6;3436:51;3484:1;3480:6;3472:5;3469:1;3465:13;3436:51;:::i;:::-;3432:56;3517:4;3511;3507:15;3497:25;;3410:118;3359:169;;;;:::o;3533:295::-;3609:4;3755:29;3780:3;3774:4;3755:29;:::i;:::-;3747:37;;3817:3;3814:1;3810:11;3804:4;3801:21;3793:29;;3533:295;;;;:::o;3833:1395::-;3950:37;3983:3;3950:37;:::i;:::-;4052:18;4044:6;4041:30;4038:56;;;4074:18;;:::i;:::-;4038:56;4118:38;4150:4;4144:11;4118:38;:::i;:::-;4203:67;4263:6;4255;4249:4;4203:67;:::i;:::-;4297:1;4321:4;4308:17;;4353:2;4345:6;4342:14;4370:1;4365:618;;;;5027:1;5044:6;5041:77;;;5093:9;5088:3;5084:19;5078:26;5069:35;;5041:77;5144:67;5204:6;5197:5;5144:67;:::i;:::-;5138:4;5131:81;5000:222;4335:887;;4365:618;4417:4;4413:9;4405:6;4401:22;4451:37;4483:4;4451:37;:::i;:::-;4510:1;4524:208;4538:7;4535:1;4532:14;4524:208;;;4617:9;4612:3;4608:19;4602:26;4594:6;4587:42;4668:1;4660:6;4656:14;4646:24;;4715:2;4704:9;4700:18;4687:31;;4561:4;4558:1;4554:12;4549:17;;4524:208;;;4760:6;4751:7;4748:19;4745:179;;;4818:9;4813:3;4809:19;4803:26;4861:48;4903:4;4895:6;4891:17;4880:9;4861:48;:::i;:::-;4853:6;4846:64;4768:156;4745:179;4970:1;4966;4958:6;4954:14;4950:22;4944:4;4937:36;4372:611;;;4335:887;;3925:1303;;;3833:1395;;:::o;69:565:0:-;;;;;;;" | |
}, | |
"deployedBytecode": { | |
"functionDebugData": { | |
"@helloWorld_26": { | |
"entryPoint": 401, | |
"id": 26, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"@owner_5": { | |
"entryPoint": 363, | |
"id": 5, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"@setText_38": { | |
"entryPoint": 197, | |
"id": 38, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"@transferOwnership_50": { | |
"entryPoint": 547, | |
"id": 50, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"abi_decode_t_address": { | |
"entryPoint": 1240, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_string_calldata_ptr": { | |
"entryPoint": 784, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 2 | |
}, | |
"abi_decode_tuple_t_address": { | |
"entryPoint": 1261, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_string_calldata_ptr": { | |
"entryPoint": 870, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 2 | |
}, | |
"abi_encode_t_address_to_t_address_fromStack": { | |
"entryPoint": 997, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 1126, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 1347, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { | |
"entryPoint": 1012, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 1183, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 1382, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"allocate_unbounded": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"array_dataslot_t_string_storage": { | |
"entryPoint": 1568, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_length_t_string_calldata_ptr": { | |
"entryPoint": 1414, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"array_length_t_string_memory_ptr": { | |
"entryPoint": 1039, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { | |
"entryPoint": 1050, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"clean_up_bytearray_end_slots_t_string_storage": { | |
"entryPoint": 1865, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"cleanup_t_address": { | |
"entryPoint": 979, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint160": { | |
"entryPoint": 947, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint256": { | |
"entryPoint": 1700, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"clear_storage_range_t_bytes1": { | |
"entryPoint": 1830, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"convert_t_uint256_to_t_uint256": { | |
"entryPoint": 1720, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"copy_byte_array_to_storage_from_t_string_calldata_ptr_to_t_string_storage": { | |
"entryPoint": 2006, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"copy_memory_to_memory_with_cleanup": { | |
"entryPoint": 1067, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"divide_by_32_ceil": { | |
"entryPoint": 1589, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"extract_byte_array_length": { | |
"entryPoint": 1519, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"extract_used_part_and_set_length_of_short_byte_array": { | |
"entryPoint": 1978, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"identity": { | |
"entryPoint": 1710, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"mask_bytes_dynamic": { | |
"entryPoint": 1948, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"panic_error_0x22": { | |
"entryPoint": 1472, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"panic_error_0x41": { | |
"entryPoint": 1425, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"prepare_store_t_uint256": { | |
"entryPoint": 1754, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490": { | |
"entryPoint": 774, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { | |
"entryPoint": 769, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": { | |
"entryPoint": 779, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { | |
"entryPoint": 764, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { | |
"entryPoint": 759, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"round_up_to_mul_of_32": { | |
"entryPoint": 1109, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"shift_left_dynamic": { | |
"entryPoint": 1605, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"shift_right_unsigned_dynamic": { | |
"entryPoint": 1935, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"storage_set_to_zero_t_uint256": { | |
"entryPoint": 1806, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33": { | |
"entryPoint": 1306, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"update_byte_slice_dynamic32": { | |
"entryPoint": 1618, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"update_storage_value_t_uint256_to_t_uint256": { | |
"entryPoint": 1764, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_address": { | |
"entryPoint": 1217, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"zero_value_for_split_t_uint256": { | |
"entryPoint": 1801, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
} | |
}, | |
"generatedSources": [ | |
{ | |
"ast": { | |
"nodeType": "YulBlock", | |
"src": "0:10553:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "47:35:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "57:19:1", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "73:2:1", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "67:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "67:9:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "57:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "allocate_unbounded", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "40:6:1", | |
"type": "" | |
} | |
], | |
"src": "7:75:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "177:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "194:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "197:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "187:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "187:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "187:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulFunctionDefinition", | |
"src": "88:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "300:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "317:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "320:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "310:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "310:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "310:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", | |
"nodeType": "YulFunctionDefinition", | |
"src": "211:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "423:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "440:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "443:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "433:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "433:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "433:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", | |
"nodeType": "YulFunctionDefinition", | |
"src": "334:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "546:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "563:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "566:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "556:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "556:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "556:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", | |
"nodeType": "YulFunctionDefinition", | |
"src": "457:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "669:28:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "686:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "689:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "679:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "679:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "679:12:1" | |
} | |
] | |
}, | |
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", | |
"nodeType": "YulFunctionDefinition", | |
"src": "580:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "792:478:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "841:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", | |
"nodeType": "YulIdentifier", | |
"src": "843:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "843:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "843:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "820:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "828:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "816:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "816:17:1" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "835:3:1" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "812:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "812:27:1" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "805:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "805:35:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "802:122:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "933:30:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "956:6:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "943:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "943:20:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "933:6:1" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1006:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", | |
"nodeType": "YulIdentifier", | |
"src": "1008:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1008:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1008:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "978:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "986:18:1", | |
"type": "", | |
"value": "0xffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "975:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "975:30:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "972:117:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1098:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1114:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1122:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1110:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1110:17:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "arrayPos", | |
"nodeType": "YulIdentifier", | |
"src": "1098:8:1" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1181:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", | |
"nodeType": "YulIdentifier", | |
"src": "1183:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1183:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1183:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "arrayPos", | |
"nodeType": "YulIdentifier", | |
"src": "1146:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "1160:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1168:4:1", | |
"type": "", | |
"value": "0x01" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "1156:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1156:17:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1142:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1142:32:1" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "1176:3:1" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "1139:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1139:41:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "1136:128:1" | |
} | |
] | |
}, | |
"name": "abi_decode_t_string_calldata_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "759:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "767:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "arrayPos", | |
"nodeType": "YulTypedName", | |
"src": "775:8:1", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "785:6:1", | |
"type": "" | |
} | |
], | |
"src": "717:553:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1362:443:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1408:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "1410:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1410:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1410:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1383:7:1" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1392:9:1" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "1379:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1379:23:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1404:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "1375:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1375:32:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "1372:119:1" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1501:297:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1516:45:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1547:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1558:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1543:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1543:17:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "1530:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1530:31:1" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1520:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1608:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", | |
"nodeType": "YulIdentifier", | |
"src": "1610:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1610:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1610:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1580:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1588:18:1", | |
"type": "", | |
"value": "0xffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "1577:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1577:30:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "1574:117:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1705:83:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1760:9:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1771:6:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1756:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1756:22:1" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1780:7:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_string_calldata_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "1723:32:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1723:65:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "1705:6:1" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "1713:6:1" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_string_calldata_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "1324:9:1", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "1335:7:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1347:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "1355:6:1", | |
"type": "" | |
} | |
], | |
"src": "1276:529:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1856:81:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1866:65:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1881:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1888:42:1", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "1877:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1877:54:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1866:7:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1838:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1848:7:1", | |
"type": "" | |
} | |
], | |
"src": "1811:126:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1988:51:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1998:35:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2027:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulIdentifier", | |
"src": "2009:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2009:24:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1998:7:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1970:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1980:7:1", | |
"type": "" | |
} | |
], | |
"src": "1943:96:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2110:53:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2127:3:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2150:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "2132:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2132:24:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2120:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2120:37:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2120:37:1" | |
} | |
] | |
}, | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2098:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "2105:3:1", | |
"type": "" | |
} | |
], | |
"src": "2045:118:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2267:124:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2277:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2289:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2300:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2285:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2285:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2277:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "2357:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2370:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2381:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2366:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2366:17:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "2313:43:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2313:71:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2313:71:1" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "2239:9:1", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "2251:6:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "2262:4:1", | |
"type": "" | |
} | |
], | |
"src": "2169:222:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2456:40:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2467:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2483:5:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "2477:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2477:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "2467:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2439:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "2449:6:1", | |
"type": "" | |
} | |
], | |
"src": "2397:99:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2598:73:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2615:3:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "2620:6:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2608:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2608:19:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2608:19:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2636:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2655:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2660:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2651:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2651:14:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulIdentifier", | |
"src": "2636:11:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "2570:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "2575:6:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulTypedName", | |
"src": "2586:11:1", | |
"type": "" | |
} | |
], | |
"src": "2502:169:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2739:184:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2749:10:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2758:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "i", | |
"nodeType": "YulTypedName", | |
"src": "2753:1:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2818:63:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dst", | |
"nodeType": "YulIdentifier", | |
"src": "2843:3:1" | |
}, | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2848:1:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2839:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2839:11:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "2862:3:1" | |
}, | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2867:1:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2858:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2858:11:1" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "2852:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2852:18:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2832:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2832:39:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2832:39:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2779:1:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "2782:6:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "2776:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2776:13:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "2790:19:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2792:15:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2801:1:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2804:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2797:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2797:10:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "2792:1:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "2772:3:1", | |
"statements": [] | |
}, | |
"src": "2768:113:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dst", | |
"nodeType": "YulIdentifier", | |
"src": "2901:3:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "2906:6:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2897:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2897:16:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2915:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2890:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2890:27:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2890:27:1" | |
} | |
] | |
}, | |
"name": "copy_memory_to_memory_with_cleanup", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "src", | |
"nodeType": "YulTypedName", | |
"src": "2721:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "dst", | |
"nodeType": "YulTypedName", | |
"src": "2726:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "2731:6:1", | |
"type": "" | |
} | |
], | |
"src": "2677:246:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2977:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2987:38:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3005:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3012:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3001:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3001:14:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3021:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "3017:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3017:7:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "2997:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2997:28:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "2987:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "round_up_to_mul_of_32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2960:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "2970:6:1", | |
"type": "" | |
} | |
], | |
"src": "2929:102:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3129:285:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3139:53:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3186:5:1" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "3153:32:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3153:39:1" | |
}, | |
"variables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "3143:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3201:78:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3267:3:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3272:6:1" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "3208:58:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3208:71:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3201:3:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3327:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3334:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3323:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3323:16:1" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3341:3:1" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3346:6:1" | |
} | |
], | |
"functionName": { | |
"name": "copy_memory_to_memory_with_cleanup", | |
"nodeType": "YulIdentifier", | |
"src": "3288:34:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3288:65:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3288:65:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3362:46:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3373:3:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3400:6:1" | |
} | |
], | |
"functionName": { | |
"name": "round_up_to_mul_of_32", | |
"nodeType": "YulIdentifier", | |
"src": "3378:21:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3378:29:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3369:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3369:39:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "3362:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3110:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3117:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "3125:3:1", | |
"type": "" | |
} | |
], | |
"src": "3037:377:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3538:195:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3548:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "3560:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3571:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3556:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3556:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "3548:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "3595:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3606:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3591:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3591:17:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "3614:4:1" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "3620:9:1" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "3610:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3610:20:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "3584:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3584:47:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3584:47:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3640:86:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "3712:6:1" | |
}, | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "3721:4:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "3648:63:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3648:78:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "3640: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": "3510:9:1", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "3522:6:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "3533:4:1", | |
"type": "" | |
} | |
], | |
"src": "3420:313:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3782:79:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3839:16:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3848:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3851:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "3841:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3841:12:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3841:12:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3805:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3830:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "3812:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3812:24:1" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "3802:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3802:35:1" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "3795:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3795:43:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "3792:63:1" | |
} | |
] | |
}, | |
"name": "validator_revert_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3775:5:1", | |
"type": "" | |
} | |
], | |
"src": "3739:122:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3919:87:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3929:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "3951:6:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "3938:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3938:20:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3929:5:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3994:5:1" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "3967:26:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3967:33:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3967:33:1" | |
} | |
] | |
}, | |
"name": "abi_decode_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "3897:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "3905:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3913:5:1", | |
"type": "" | |
} | |
], | |
"src": "3867:139:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4078:263:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4124:83:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "4126:77:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4126:79:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4126:79:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "4099:7:1" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "4108:9:1" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "4095:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4095:23:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4120:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "4091:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4091:32:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "4088:119:1" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "4217:117:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4232:15:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4246:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "4236:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4261:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "4296:9:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "4307:6:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4292:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4292:22:1" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "4316:7:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "4271:20:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4271:53:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "4261:6:1" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "4048:9:1", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "4059:7:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "4071:6:1", | |
"type": "" | |
} | |
], | |
"src": "4012:329:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4453:67:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4475:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4483:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4471:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4471:14:1" | |
}, | |
{ | |
"hexValue": "43616c6c6572206973206e6f7420746865206f776e6572", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "4487:25:1", | |
"type": "", | |
"value": "Caller is not the owner" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "4464:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4464:49:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4464:49:1" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "4445:6:1", | |
"type": "" | |
} | |
], | |
"src": "4347:173:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4672:220:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4682:74:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4748:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4753:2:1", | |
"type": "", | |
"value": "23" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "4689:58:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4689:67:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4682:3:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4854:3:1" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33", | |
"nodeType": "YulIdentifier", | |
"src": "4765:88:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4765:93:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4765:93:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4867:19:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4878:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4883:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4874:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4874:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "4867:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "4660:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "4668:3:1", | |
"type": "" | |
} | |
], | |
"src": "4526:366:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5069:248:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5079:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "5091:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5102:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5087:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5087:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5079:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "5126:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5137:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5122:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5122:17:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5145:4:1" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "5151:9:1" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "5141:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5141:20:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5115:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5115:47:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5115:47:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5171:139:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5305:4:1" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "5179:124:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5179:131:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5171:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "5049:9:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "5064:4:1", | |
"type": "" | |
} | |
], | |
"src": "4898:419:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5389:31:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5400:13:1", | |
"value": { | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "5410:3:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "5400:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_string_calldata_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "5367:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "5374:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "5382:6:1", | |
"type": "" | |
} | |
], | |
"src": "5323:97:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5454:152:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5471:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5474:77:1", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5464:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5464:88:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5464:88:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5568:1:1", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5571:4:1", | |
"type": "", | |
"value": "0x41" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5561:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5561:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5561:15:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5592:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5595:4:1", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "5585:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5585:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5585:15:1" | |
} | |
] | |
}, | |
"name": "panic_error_0x41", | |
"nodeType": "YulFunctionDefinition", | |
"src": "5426:180:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5640:152:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5657:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5660:77:1", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5650:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5650:88:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5650:88:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5754:1:1", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5757:4:1", | |
"type": "", | |
"value": "0x22" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5747:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5747:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5747:15:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5778:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5781:4:1", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "5771:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5771:15:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5771:15:1" | |
} | |
] | |
}, | |
"name": "panic_error_0x22", | |
"nodeType": "YulFunctionDefinition", | |
"src": "5612:180:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5849:269:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5859:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "5873:4:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5879:1:1", | |
"type": "", | |
"value": "2" | |
} | |
], | |
"functionName": { | |
"name": "div", | |
"nodeType": "YulIdentifier", | |
"src": "5869:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5869:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "5859:6:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "5890:38:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "5920:4:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5926:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "5916:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5916:12:1" | |
}, | |
"variables": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulTypedName", | |
"src": "5894:18:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5967:51:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5981:27:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "5995:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6003:4:1", | |
"type": "", | |
"value": "0x7f" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "5991:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5991:17:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "5981:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulIdentifier", | |
"src": "5947:18:1" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "5940:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5940:26:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "5937:81:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6070:42:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x22", | |
"nodeType": "YulIdentifier", | |
"src": "6084:16:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6084:18:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6084:18:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "outOfPlaceEncoding", | |
"nodeType": "YulIdentifier", | |
"src": "6034:18:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "6057:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6065:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "6054:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6054:14:1" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "6031:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6031:38:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "6028:84:1" | |
} | |
] | |
}, | |
"name": "extract_byte_array_length", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "5833:4:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "5842:6:1", | |
"type": "" | |
} | |
], | |
"src": "5798:320:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6178:87:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6188:11:1", | |
"value": { | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "6196:3:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "6188:4:1" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6216:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "6219:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "6209:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6209:14:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6209:14:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6232:26:1", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6250:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6253:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "keccak256", | |
"nodeType": "YulIdentifier", | |
"src": "6240:9:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6240:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "6232:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "ptr", | |
"nodeType": "YulTypedName", | |
"src": "6165:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "6173:4:1", | |
"type": "" | |
} | |
], | |
"src": "6124:141:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6315:49:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6325:33:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6343:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6350:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6339:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6339:14:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6355:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "div", | |
"nodeType": "YulIdentifier", | |
"src": "6335:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6335:23:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "6325:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6298:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "6308:6:1", | |
"type": "" | |
} | |
], | |
"src": "6271:93:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6423:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6433:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulIdentifier", | |
"src": "6458:4:1" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6464:5:1" | |
} | |
], | |
"functionName": { | |
"name": "shl", | |
"nodeType": "YulIdentifier", | |
"src": "6454:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6454:16:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulIdentifier", | |
"src": "6433:8:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "shift_left_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulTypedName", | |
"src": "6398:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6404:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulTypedName", | |
"src": "6414:8:1", | |
"type": "" | |
} | |
], | |
"src": "6370:107:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6559:317:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "6569:35:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBytes", | |
"nodeType": "YulIdentifier", | |
"src": "6590:10:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6602:1:1", | |
"type": "", | |
"value": "8" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "6586:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6586:18:1" | |
}, | |
"variables": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulTypedName", | |
"src": "6573:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "6613:109:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulIdentifier", | |
"src": "6644:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6655:66:1", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "shift_left_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "6625:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6625:97:1" | |
}, | |
"variables": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulTypedName", | |
"src": "6617:4:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6731:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "shiftBits", | |
"nodeType": "YulIdentifier", | |
"src": "6762:9:1" | |
}, | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "6773:8:1" | |
} | |
], | |
"functionName": { | |
"name": "shift_left_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "6743:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6743:39:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "6731:8:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6791:30:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6804:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "6815:4:1" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "6811:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6811:9:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "6800:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6800:21:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6791:5:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6830:40:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6843:5:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "toInsert", | |
"nodeType": "YulIdentifier", | |
"src": "6854:8:1" | |
}, | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "6864:4:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "6850:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6850:19:1" | |
} | |
], | |
"functionName": { | |
"name": "or", | |
"nodeType": "YulIdentifier", | |
"src": "6840:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6840:30:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "6830:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "update_byte_slice_dynamic32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6520:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "shiftBytes", | |
"nodeType": "YulTypedName", | |
"src": "6527:10:1", | |
"type": "" | |
}, | |
{ | |
"name": "toInsert", | |
"nodeType": "YulTypedName", | |
"src": "6539:8:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "6552:6:1", | |
"type": "" | |
} | |
], | |
"src": "6483:393:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6927:32:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6937:16:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "6948:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "6937:7:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6909:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "6919:7:1", | |
"type": "" | |
} | |
], | |
"src": "6882:77:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6997:28:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7007:12:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "7014:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "7007:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "identity", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "6983:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "6993:3:1", | |
"type": "" | |
} | |
], | |
"src": "6965:60:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7091:82:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7101:66:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "7159:5:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7141:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7141:24:1" | |
} | |
], | |
"functionName": { | |
"name": "identity", | |
"nodeType": "YulIdentifier", | |
"src": "7132:8:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7132:34:1" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7114:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7114:53:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "converted", | |
"nodeType": "YulIdentifier", | |
"src": "7101:9:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "convert_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "7071:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "converted", | |
"nodeType": "YulTypedName", | |
"src": "7081:9:1", | |
"type": "" | |
} | |
], | |
"src": "7031:142:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7226:28:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7236:12:1", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "7243:5:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "7236:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "prepare_store_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "7212:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "7222:3:1", | |
"type": "" | |
} | |
], | |
"src": "7179:75:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7336:193:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "7346:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value_0", | |
"nodeType": "YulIdentifier", | |
"src": "7401:7:1" | |
} | |
], | |
"functionName": { | |
"name": "convert_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7370:30:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7370:39:1" | |
}, | |
"variables": [ | |
{ | |
"name": "convertedValue_0", | |
"nodeType": "YulTypedName", | |
"src": "7350:16:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "7425:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "7465:4:1" | |
} | |
], | |
"functionName": { | |
"name": "sload", | |
"nodeType": "YulIdentifier", | |
"src": "7459:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7459:11:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "7472:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "convertedValue_0", | |
"nodeType": "YulIdentifier", | |
"src": "7504:16:1" | |
} | |
], | |
"functionName": { | |
"name": "prepare_store_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7480:23:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7480:41:1" | |
} | |
], | |
"functionName": { | |
"name": "update_byte_slice_dynamic32", | |
"nodeType": "YulIdentifier", | |
"src": "7431:27:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7431:91:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "7418:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7418:105:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7418:105:1" | |
} | |
] | |
}, | |
"name": "update_storage_value_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "7313:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "7319:6:1", | |
"type": "" | |
}, | |
{ | |
"name": "value_0", | |
"nodeType": "YulTypedName", | |
"src": "7327:7:1", | |
"type": "" | |
} | |
], | |
"src": "7260:269:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7584:24:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7594:8:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7601:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "7594:3:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "zero_value_for_split_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "7580:3:1", | |
"type": "" | |
} | |
], | |
"src": "7535:73:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7667:136:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "7677:46:1", | |
"value": { | |
"arguments": [], | |
"functionName": { | |
"name": "zero_value_for_split_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7691:30:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7691:32:1" | |
}, | |
"variables": [ | |
{ | |
"name": "zero_0", | |
"nodeType": "YulTypedName", | |
"src": "7681:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "7776:4:1" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "7782:6:1" | |
}, | |
{ | |
"name": "zero_0", | |
"nodeType": "YulIdentifier", | |
"src": "7790:6:1" | |
} | |
], | |
"functionName": { | |
"name": "update_storage_value_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7732:43:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7732:65:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7732:65:1" | |
} | |
] | |
}, | |
"name": "storage_set_to_zero_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "7653:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "7659:6:1", | |
"type": "" | |
} | |
], | |
"src": "7614:189:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7859:136:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7926:63:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "7970:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7977:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "storage_set_to_zero_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7940:29:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7940:39:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7940:39:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "7879:5:1" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "7886:3:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "7876:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7876:14:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "7891:26:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7893:22:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "7906:5:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7913:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7902:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7902:13:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "start", | |
"nodeType": "YulIdentifier", | |
"src": "7893:5:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "7873:2:1", | |
"statements": [] | |
}, | |
"src": "7869:120:1" | |
} | |
] | |
}, | |
"name": "clear_storage_range_t_bytes1", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "start", | |
"nodeType": "YulTypedName", | |
"src": "7847:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "7854:3:1", | |
"type": "" | |
} | |
], | |
"src": "7809:186:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8080:464:1", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8106:431:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "8120:54:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "array", | |
"nodeType": "YulIdentifier", | |
"src": "8168:5:1" | |
} | |
], | |
"functionName": { | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "8136:31:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8136:38:1" | |
}, | |
"variables": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulTypedName", | |
"src": "8124:8:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "8187:63:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "8210:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "startIndex", | |
"nodeType": "YulIdentifier", | |
"src": "8238:10:1" | |
} | |
], | |
"functionName": { | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulIdentifier", | |
"src": "8220:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8220:29:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8206:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8206:44:1" | |
}, | |
"variables": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulTypedName", | |
"src": "8191:11:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8407:27:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8409:23:1", | |
"value": { | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "8424:8:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulIdentifier", | |
"src": "8409:11:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "startIndex", | |
"nodeType": "YulIdentifier", | |
"src": "8391:10:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8403:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "8388:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8388:18:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "8385:49:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "deleteStart", | |
"nodeType": "YulIdentifier", | |
"src": "8476:11:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "dataArea", | |
"nodeType": "YulIdentifier", | |
"src": "8493:8:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "8521:3:1" | |
} | |
], | |
"functionName": { | |
"name": "divide_by_32_ceil", | |
"nodeType": "YulIdentifier", | |
"src": "8503:17:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8503:22:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8489:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8489:37:1" | |
} | |
], | |
"functionName": { | |
"name": "clear_storage_range_t_bytes1", | |
"nodeType": "YulIdentifier", | |
"src": "8447:28:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8447:80:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8447:80:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "8097:3:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8102:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "8094:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8094:11:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "8091:446:1" | |
} | |
] | |
}, | |
"name": "clean_up_bytearray_end_slots_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "array", | |
"nodeType": "YulTypedName", | |
"src": "8056:5:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "8063:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "startIndex", | |
"nodeType": "YulTypedName", | |
"src": "8068:10:1", | |
"type": "" | |
} | |
], | |
"src": "8001:543:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8613:54:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8623:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulIdentifier", | |
"src": "8648:4:1" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "8654:5:1" | |
} | |
], | |
"functionName": { | |
"name": "shr", | |
"nodeType": "YulIdentifier", | |
"src": "8644:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8644:16:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulIdentifier", | |
"src": "8623:8:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "shift_right_unsigned_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "bits", | |
"nodeType": "YulTypedName", | |
"src": "8588:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "8594:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "newValue", | |
"nodeType": "YulTypedName", | |
"src": "8604:8:1", | |
"type": "" | |
} | |
], | |
"src": "8550:117:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8724:118:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "8734:68:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8783:1:1", | |
"type": "", | |
"value": "8" | |
}, | |
{ | |
"name": "bytes", | |
"nodeType": "YulIdentifier", | |
"src": "8786:5:1" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "8779:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8779:13:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8798:1:1", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "8794:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8794:6:1" | |
} | |
], | |
"functionName": { | |
"name": "shift_right_unsigned_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "8750:28:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8750:51:1" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "8746:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8746:56:1" | |
}, | |
"variables": [ | |
{ | |
"name": "mask", | |
"nodeType": "YulTypedName", | |
"src": "8738:4:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8811:25:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "8825:4:1" | |
}, | |
{ | |
"name": "mask", | |
"nodeType": "YulIdentifier", | |
"src": "8831:4:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "8821:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8821:15:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "8811:6:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "8701:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "bytes", | |
"nodeType": "YulTypedName", | |
"src": "8707:5:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "8717:6:1", | |
"type": "" | |
} | |
], | |
"src": "8673:169:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8928:214:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9061:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "9088:4:1" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "9094:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "9069:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9069:29:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "9061:4:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9107:29:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "9118:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9128:1:1", | |
"type": "", | |
"value": "2" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "9131:3:1" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "9124:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9124:11:1" | |
} | |
], | |
"functionName": { | |
"name": "or", | |
"nodeType": "YulIdentifier", | |
"src": "9115:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9115:21:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "used", | |
"nodeType": "YulIdentifier", | |
"src": "9107:4:1" | |
} | |
] | |
} | |
] | |
}, | |
"name": "extract_used_part_and_set_length_of_short_byte_array", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "8909:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "8915:3:1", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "used", | |
"nodeType": "YulTypedName", | |
"src": "8923:4:1", | |
"type": "" | |
} | |
], | |
"src": "8847:295:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9246:1304:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9257:58:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "9306:3:1" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulIdentifier", | |
"src": "9311:3:1" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_string_calldata_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "9271:34:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9271:44:1" | |
}, | |
"variables": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulTypedName", | |
"src": "9261:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9400:22:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x41", | |
"nodeType": "YulIdentifier", | |
"src": "9402:16:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9402:18:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9402:18:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "9372:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9380:18:1", | |
"type": "", | |
"value": "0xffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "9369:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9369:30:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "9366:56:1" | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9432:52:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "9478:4:1" | |
} | |
], | |
"functionName": { | |
"name": "sload", | |
"nodeType": "YulIdentifier", | |
"src": "9472:5:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9472:11:1" | |
} | |
], | |
"functionName": { | |
"name": "extract_byte_array_length", | |
"nodeType": "YulIdentifier", | |
"src": "9446:25:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9446:38:1" | |
}, | |
"variables": [ | |
{ | |
"name": "oldLen", | |
"nodeType": "YulTypedName", | |
"src": "9436:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "9577:4:1" | |
}, | |
{ | |
"name": "oldLen", | |
"nodeType": "YulIdentifier", | |
"src": "9583:6:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "9591:6:1" | |
} | |
], | |
"functionName": { | |
"name": "clean_up_bytearray_end_slots_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "9531:45:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9531:67:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9531:67:1" | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9608:18:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9625:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulTypedName", | |
"src": "9612:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"cases": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9673:625:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9687:37:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "9706:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9718:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "9714:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9714:9:1" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "9702:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9702:22:1" | |
}, | |
"variables": [ | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulTypedName", | |
"src": "9691:7:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9738:51:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "9784:4:1" | |
} | |
], | |
"functionName": { | |
"name": "array_dataslot_t_string_storage", | |
"nodeType": "YulIdentifier", | |
"src": "9752:31:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9752:37:1" | |
}, | |
"variables": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulTypedName", | |
"src": "9742:6:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "9802:10:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9811:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "i", | |
"nodeType": "YulTypedName", | |
"src": "9806:1:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9870:170:1", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "9895:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "9920:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "9925:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9916:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9916:19:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "9903:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9903:33:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "9888:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9888:49:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9888:49:1" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9954:24:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "9968:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9976:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9964:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9964:14:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "9954:6:1" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9995:31:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "10012:9:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10023:2:1", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10008:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10008:18:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "9995:9:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "9836:1:1" | |
}, | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulIdentifier", | |
"src": "9839:7:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "9833:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9833:14:1" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "9848:21:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9850:17:1", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "9859:1:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9862:4:1", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9855:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9855:12:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "9850:1:1" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "9829:3:1", | |
"statements": [] | |
}, | |
"src": "9825:215:1" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10076:163:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "10094:50:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "10128:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "10133:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10124:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10124:19:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "10111:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10111:33:1" | |
}, | |
"variables": [ | |
{ | |
"name": "lastValue", | |
"nodeType": "YulTypedName", | |
"src": "10098:9:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "dstPtr", | |
"nodeType": "YulIdentifier", | |
"src": "10168:6:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "lastValue", | |
"nodeType": "YulIdentifier", | |
"src": "10195:9:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10210:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10218:4:1", | |
"type": "", | |
"value": "0x1f" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "10206:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10206:17:1" | |
} | |
], | |
"functionName": { | |
"name": "mask_bytes_dynamic", | |
"nodeType": "YulIdentifier", | |
"src": "10176:18:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10176:48:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "10161:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10161:64:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10161:64:1" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "loopEnd", | |
"nodeType": "YulIdentifier", | |
"src": "10059:7:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10068:6:1" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "10056:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10056:19:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "10053:186:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "10259:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10273:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10281:1:1", | |
"type": "", | |
"value": "2" | |
} | |
], | |
"functionName": { | |
"name": "mul", | |
"nodeType": "YulIdentifier", | |
"src": "10269:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10269:14:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10285:1:1", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10265:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10265:22:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "10252:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10252:36:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10252:36:1" | |
} | |
] | |
}, | |
"nodeType": "YulCase", | |
"src": "9666:632:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9671:1:1", | |
"type": "", | |
"value": "1" | |
} | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10315:229:1", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "10329:14:1", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10342:1:1", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "10333:5:1", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10366:74:1", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10384:42:1", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "10410:3:1" | |
}, | |
{ | |
"name": "srcOffset", | |
"nodeType": "YulIdentifier", | |
"src": "10415:9:1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10406:3:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10406:19:1" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "10393:12:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10393:33:1" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "10384:5:1" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10359:6:1" | |
}, | |
"nodeType": "YulIf", | |
"src": "10356:84:1" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulIdentifier", | |
"src": "10460:4:1" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "10519:5:1" | |
}, | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "10526:6:1" | |
} | |
], | |
"functionName": { | |
"name": "extract_used_part_and_set_length_of_short_byte_array", | |
"nodeType": "YulIdentifier", | |
"src": "10466:52:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10466:67:1" | |
} | |
], | |
"functionName": { | |
"name": "sstore", | |
"nodeType": "YulIdentifier", | |
"src": "10453:6:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10453:81:1" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10453:81:1" | |
} | |
] | |
}, | |
"nodeType": "YulCase", | |
"src": "10307:237:1", | |
"value": "default" | |
} | |
], | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "newLen", | |
"nodeType": "YulIdentifier", | |
"src": "9646:6:1" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9654:2:1", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "9643:2:1" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9643:14:1" | |
}, | |
"nodeType": "YulSwitch", | |
"src": "9636:908:1" | |
} | |
] | |
}, | |
"name": "copy_byte_array_to_storage_from_t_string_calldata_ptr_to_t_string_storage", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "slot", | |
"nodeType": "YulTypedName", | |
"src": "9230:4:1", | |
"type": "" | |
}, | |
{ | |
"name": "src", | |
"nodeType": "YulTypedName", | |
"src": "9236:3:1", | |
"type": "" | |
}, | |
{ | |
"name": "len", | |
"nodeType": "YulTypedName", | |
"src": "9241:3:1", | |
"type": "" | |
} | |
], | |
"src": "9147:1403:1" | |
} | |
] | |
}, | |
"contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // string\n function abi_decode_t_string_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_string_calldata_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0, value1 := abi_decode_t_string_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\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_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 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 copy_memory_to_memory_with_cleanup(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 mstore(add(dst, length), 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\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_with_cleanup(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\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 validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33(memPtr) {\n\n mstore(add(memPtr, 0), \"Caller is not the owner\")\n\n }\n\n function abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n store_literal_in_memory_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_15ed5034391ed5ef65b8bb8dbcb08f9b6c4034ebcf89f76344a17e1651e92b33_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_length_t_string_calldata_ptr(value, len) -> length {\n\n length := len\n\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\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 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 array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_calldata_ptr_to_t_string_storage(slot, src, len) {\n\n let newLen := array_length_t_string_calldata_ptr(src, len)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, calldataload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := calldataload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := calldataload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n}\n", | |
"id": 1, | |
"language": "Yul", | |
"name": "#utility.yul" | |
} | |
], | |
"immutableReferences": {}, | |
"linkReferences": {}, | |
"object": "608060405234801561001057600080fd5b506004361061004c5760003560e01c80635d3a1f9d146100515780638da5cb5b1461006d578063c605f76c1461008b578063f2fde38b146100a9575b600080fd5b61006b60048036038101906100669190610366565b6100c5565b005b61007561016b565b60405161008291906103f4565b60405180910390f35b610093610191565b6040516100a0919061049f565b60405180910390f35b6100c360048036038101906100be91906104ed565b610223565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610155576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014c90610566565b60405180910390fd5b8181600091826101669291906107d6565b505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6060600080546101a0906105ef565b80601f01602080910402602001604051908101604052809291908181526020018280546101cc906105ef565b80156102195780601f106101ee57610100808354040283529160200191610219565b820191906000526020600020905b8154815290600101906020018083116101fc57829003601f168201915b5050505050905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102aa90610566565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f84011261032657610325610301565b5b8235905067ffffffffffffffff81111561034357610342610306565b5b60208301915083600182028301111561035f5761035e61030b565b5b9250929050565b6000806020838503121561037d5761037c6102f7565b5b600083013567ffffffffffffffff81111561039b5761039a6102fc565b5b6103a785828601610310565b92509250509250929050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006103de826103b3565b9050919050565b6103ee816103d3565b82525050565b600060208201905061040960008301846103e5565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561044957808201518184015260208101905061042e565b60008484015250505050565b6000601f19601f8301169050919050565b60006104718261040f565b61047b818561041a565b935061048b81856020860161042b565b61049481610455565b840191505092915050565b600060208201905081810360008301526104b98184610466565b905092915050565b6104ca816103d3565b81146104d557600080fd5b50565b6000813590506104e7816104c1565b92915050565b600060208284031215610503576105026102f7565b5b6000610511848285016104d8565b91505092915050565b7f43616c6c6572206973206e6f7420746865206f776e6572000000000000000000600082015250565b600061055060178361041a565b915061055b8261051a565b602082019050919050565b6000602082019050818103600083015261057f81610543565b9050919050565b600082905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061060757607f821691505b60208210810361061a576106196105c0565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026106827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610645565b61068c8683610645565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006106d36106ce6106c9846106a4565b6106ae565b6106a4565b9050919050565b6000819050919050565b6106ed836106b8565b6107016106f9826106da565b848454610652565b825550505050565b600090565b610716610709565b6107218184846106e4565b505050565b5b818110156107455761073a60008261070e565b600181019050610727565b5050565b601f82111561078a5761075b81610620565b61076484610635565b81016020851015610773578190505b61078761077f85610635565b830182610726565b50505b505050565b600082821c905092915050565b60006107ad6000198460080261078f565b1980831691505092915050565b60006107c6838361079c565b9150826002028217905092915050565b6107e08383610586565b67ffffffffffffffff8111156107f9576107f8610591565b5b61080382546105ef565b61080e828285610749565b6000601f83116001811461083d576000841561082b578287013590505b61083585826107ba565b86555061089d565b601f19841661084b86610620565b60005b828110156108735784890135825560018201915060208501945060208101905061084e565b86831015610890578489013561088c601f89168261079c565b8355505b6001600288020188555050505b5050505050505056fea264697066735822122017505db29d005a0ca7290a01a22e0cf9abe8543ef818189ad2148cbb95966fc064736f6c63430008120033", | |
"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 0x5D3A1F9D EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x6D JUMPI DUP1 PUSH4 0xC605F76C EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xA9 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x366 JUMP JUMPDEST PUSH2 0xC5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x75 PUSH2 0x16B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x82 SWAP2 SWAP1 PUSH2 0x3F4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x93 PUSH2 0x191 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA0 SWAP2 SWAP1 PUSH2 0x49F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xBE SWAP2 SWAP1 PUSH2 0x4ED JUMP JUMPDEST PUSH2 0x223 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x155 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14C SWAP1 PUSH2 0x566 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 DUP2 PUSH1 0x0 SWAP2 DUP3 PUSH2 0x166 SWAP3 SWAP2 SWAP1 PUSH2 0x7D6 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP1 SLOAD PUSH2 0x1A0 SWAP1 PUSH2 0x5EF 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 0x1CC SWAP1 PUSH2 0x5EF JUMP JUMPDEST DUP1 ISZERO PUSH2 0x219 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1EE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x219 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 0x1FC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2B3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2AA SWAP1 PUSH2 0x566 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x1 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x326 JUMPI PUSH2 0x325 PUSH2 0x301 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x343 JUMPI PUSH2 0x342 PUSH2 0x306 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x35F JUMPI PUSH2 0x35E PUSH2 0x30B JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x37D JUMPI PUSH2 0x37C PUSH2 0x2F7 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x39B JUMPI PUSH2 0x39A PUSH2 0x2FC JUMP JUMPDEST JUMPDEST PUSH2 0x3A7 DUP6 DUP3 DUP7 ADD PUSH2 0x310 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3DE DUP3 PUSH2 0x3B3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3EE DUP2 PUSH2 0x3D3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x409 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3E5 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 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x449 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x42E JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 ADD MSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x471 DUP3 PUSH2 0x40F JUMP JUMPDEST PUSH2 0x47B DUP2 DUP6 PUSH2 0x41A JUMP JUMPDEST SWAP4 POP PUSH2 0x48B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x42B JUMP JUMPDEST PUSH2 0x494 DUP2 PUSH2 0x455 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4B9 DUP2 DUP5 PUSH2 0x466 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x4CA DUP2 PUSH2 0x3D3 JUMP JUMPDEST DUP2 EQ PUSH2 0x4D5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4E7 DUP2 PUSH2 0x4C1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x503 JUMPI PUSH2 0x502 PUSH2 0x2F7 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x511 DUP5 DUP3 DUP6 ADD PUSH2 0x4D8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F7420746865206F776E6572000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x550 PUSH1 0x17 DUP4 PUSH2 0x41A JUMP JUMPDEST SWAP2 POP PUSH2 0x55B DUP3 PUSH2 0x51A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x57F DUP2 PUSH2 0x543 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 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 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x607 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x61A JUMPI PUSH2 0x619 PUSH2 0x5C0 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x8 DUP4 MUL PUSH2 0x682 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x645 JUMP JUMPDEST PUSH2 0x68C DUP7 DUP4 PUSH2 0x645 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6D3 PUSH2 0x6CE PUSH2 0x6C9 DUP5 PUSH2 0x6A4 JUMP JUMPDEST PUSH2 0x6AE JUMP JUMPDEST PUSH2 0x6A4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x6ED DUP4 PUSH2 0x6B8 JUMP JUMPDEST PUSH2 0x701 PUSH2 0x6F9 DUP3 PUSH2 0x6DA JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x652 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x0 SWAP1 JUMP JUMPDEST PUSH2 0x716 PUSH2 0x709 JUMP JUMPDEST PUSH2 0x721 DUP2 DUP5 DUP5 PUSH2 0x6E4 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x745 JUMPI PUSH2 0x73A PUSH1 0x0 DUP3 PUSH2 0x70E JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x727 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x78A JUMPI PUSH2 0x75B DUP2 PUSH2 0x620 JUMP JUMPDEST PUSH2 0x764 DUP5 PUSH2 0x635 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x773 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x787 PUSH2 0x77F DUP6 PUSH2 0x635 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x726 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AD PUSH1 0x0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x78F JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7C6 DUP4 DUP4 PUSH2 0x79C JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x7E0 DUP4 DUP4 PUSH2 0x586 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7F9 JUMPI PUSH2 0x7F8 PUSH2 0x591 JUMP JUMPDEST JUMPDEST PUSH2 0x803 DUP3 SLOAD PUSH2 0x5EF JUMP JUMPDEST PUSH2 0x80E DUP3 DUP3 DUP6 PUSH2 0x749 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x83D JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x82B JUMPI DUP3 DUP8 ADD CALLDATALOAD SWAP1 POP JUMPDEST PUSH2 0x835 DUP6 DUP3 PUSH2 0x7BA JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x89D JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x84B DUP7 PUSH2 0x620 JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x873 JUMPI DUP5 DUP10 ADD CALLDATALOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x84E JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x890 JUMPI DUP5 DUP10 ADD CALLDATALOAD PUSH2 0x88C PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x79C JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 OR POP 0x5D 0xB2 SWAP14 STOP GAS 0xC 0xA7 0x29 EXP ADD LOG2 0x2E 0xC 0xF9 0xAB 0xE8 SLOAD RETURNDATACOPY 0xF8 XOR XOR SWAP11 0xD2 EQ DUP13 0xBB SWAP6 SWAP7 PUSH16 0xC064736F6C6343000812003300000000 ", | |
"sourceMap": "69:565:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;326:90;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;122:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;234:86;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;422:95;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;326:90;581:5;;;;;;;;;;;567:19;;:10;:19;;;558:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;402:7:::1;;395:4;:14;;;;;;;:::i;:::-;;326:90:::0;;:::o;122:20::-;;;;;;;;;;;;;:::o;234:86::-;277:13;309:4;302:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;234:86;:::o;422:95::-;581:5;;;;;;;;;;;567:19;;:10;:19;;;558:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;502:8:::1;494:5;;:16;;;;;;;;;;;;;;;;;;422:95:::0;:::o;88:117:1:-;197:1;194;187:12;211:117;320:1;317;310:12;334:117;443:1;440;433:12;457:117;566:1;563;556:12;580:117;689:1;686;679:12;717:553;775:8;785:6;835:3;828:4;820:6;816:17;812:27;802:122;;843:79;;:::i;:::-;802:122;956:6;943:20;933:30;;986:18;978:6;975:30;972:117;;;1008:79;;:::i;:::-;972:117;1122:4;1114:6;1110:17;1098:29;;1176:3;1168:4;1160:6;1156:17;1146:8;1142:32;1139:41;1136:128;;;1183:79;;:::i;:::-;1136:128;717:553;;;;;:::o;1276:529::-;1347:6;1355;1404:2;1392:9;1383:7;1379:23;1375:32;1372:119;;;1410:79;;:::i;:::-;1372:119;1558:1;1547:9;1543:17;1530:31;1588:18;1580:6;1577:30;1574:117;;;1610:79;;:::i;:::-;1574:117;1723:65;1780:7;1771:6;1760:9;1756:22;1723:65;:::i;:::-;1705:83;;;;1501:297;1276:529;;;;;:::o;1811:126::-;1848:7;1888:42;1881:5;1877:54;1866:65;;1811:126;;;:::o;1943:96::-;1980:7;2009:24;2027:5;2009:24;:::i;:::-;1998:35;;1943:96;;;:::o;2045:118::-;2132:24;2150:5;2132:24;:::i;:::-;2127:3;2120:37;2045:118;;:::o;2169:222::-;2262:4;2300:2;2289:9;2285:18;2277:26;;2313:71;2381:1;2370:9;2366:17;2357:6;2313:71;:::i;:::-;2169:222;;;;:::o;2397:99::-;2449:6;2483:5;2477:12;2467:22;;2397:99;;;:::o;2502:169::-;2586:11;2620:6;2615:3;2608:19;2660:4;2655:3;2651:14;2636:29;;2502:169;;;;:::o;2677:246::-;2758:1;2768:113;2782:6;2779:1;2776:13;2768:113;;;2867:1;2862:3;2858:11;2852:18;2848:1;2843:3;2839:11;2832:39;2804:2;2801:1;2797:10;2792:15;;2768:113;;;2915:1;2906:6;2901:3;2897:16;2890:27;2739:184;2677:246;;;:::o;2929:102::-;2970:6;3021:2;3017:7;3012:2;3005:5;3001:14;2997:28;2987:38;;2929:102;;;:::o;3037:377::-;3125:3;3153:39;3186:5;3153:39;:::i;:::-;3208:71;3272:6;3267:3;3208:71;:::i;:::-;3201:78;;3288:65;3346:6;3341:3;3334:4;3327:5;3323:16;3288:65;:::i;:::-;3378:29;3400:6;3378:29;:::i;:::-;3373:3;3369:39;3362:46;;3129:285;3037:377;;;;:::o;3420:313::-;3533:4;3571:2;3560:9;3556:18;3548:26;;3620:9;3614:4;3610:20;3606:1;3595:9;3591:17;3584:47;3648:78;3721:4;3712:6;3648:78;:::i;:::-;3640:86;;3420:313;;;;:::o;3739:122::-;3812:24;3830:5;3812:24;:::i;:::-;3805:5;3802:35;3792:63;;3851:1;3848;3841:12;3792:63;3739:122;:::o;3867:139::-;3913:5;3951:6;3938:20;3929:29;;3967:33;3994:5;3967:33;:::i;:::-;3867:139;;;;:::o;4012:329::-;4071:6;4120:2;4108:9;4099:7;4095:23;4091:32;4088:119;;;4126:79;;:::i;:::-;4088:119;4246:1;4271:53;4316:7;4307:6;4296:9;4292:22;4271:53;:::i;:::-;4261:63;;4217:117;4012:329;;;;:::o;4347:173::-;4487:25;4483:1;4475:6;4471:14;4464:49;4347:173;:::o;4526:366::-;4668:3;4689:67;4753:2;4748:3;4689:67;:::i;:::-;4682:74;;4765:93;4854:3;4765:93;:::i;:::-;4883:2;4878:3;4874:12;4867:19;;4526:366;;;:::o;4898:419::-;5064:4;5102:2;5091:9;5087:18;5079:26;;5151:9;5145:4;5141:20;5137:1;5126:9;5122:17;5115:47;5179:131;5305:4;5179:131;:::i;:::-;5171:139;;4898:419;;;:::o;5323:97::-;5382:6;5410:3;5400:13;;5323:97;;;;:::o;5426:180::-;5474:77;5471:1;5464:88;5571:4;5568:1;5561:15;5595:4;5592:1;5585:15;5612:180;5660:77;5657:1;5650:88;5757:4;5754:1;5747:15;5781:4;5778:1;5771:15;5798:320;5842:6;5879:1;5873:4;5869:12;5859:22;;5926:1;5920:4;5916:12;5947:18;5937:81;;6003:4;5995:6;5991:17;5981:27;;5937:81;6065:2;6057:6;6054:14;6034:18;6031:38;6028:84;;6084:18;;:::i;:::-;6028:84;5849:269;5798:320;;;:::o;6124:141::-;6173:4;6196:3;6188:11;;6219:3;6216:1;6209:14;6253:4;6250:1;6240:18;6232:26;;6124:141;;;:::o;6271:93::-;6308:6;6355:2;6350;6343:5;6339:14;6335:23;6325:33;;6271:93;;;:::o;6370:107::-;6414:8;6464:5;6458:4;6454:16;6433:37;;6370:107;;;;:::o;6483:393::-;6552:6;6602:1;6590:10;6586:18;6625:97;6655:66;6644:9;6625:97;:::i;:::-;6743:39;6773:8;6762:9;6743:39;:::i;:::-;6731:51;;6815:4;6811:9;6804:5;6800:21;6791:30;;6864:4;6854:8;6850:19;6843:5;6840:30;6830:40;;6559:317;;6483:393;;;;;:::o;6882:77::-;6919:7;6948:5;6937:16;;6882:77;;;:::o;6965:60::-;6993:3;7014:5;7007:12;;6965:60;;;:::o;7031:142::-;7081:9;7114:53;7132:34;7141:24;7159:5;7141:24;:::i;:::-;7132:34;:::i;:::-;7114:53;:::i;:::-;7101:66;;7031:142;;;:::o;7179:75::-;7222:3;7243:5;7236:12;;7179:75;;;:::o;7260:269::-;7370:39;7401:7;7370:39;:::i;:::-;7431:91;7480:41;7504:16;7480:41;:::i;:::-;7472:6;7465:4;7459:11;7431:91;:::i;:::-;7425:4;7418:105;7336:193;7260:269;;;:::o;7535:73::-;7580:3;7535:73;:::o;7614:189::-;7691:32;;:::i;:::-;7732:65;7790:6;7782;7776:4;7732:65;:::i;:::-;7667:136;7614:189;;:::o;7809:186::-;7869:120;7886:3;7879:5;7876:14;7869:120;;;7940:39;7977:1;7970:5;7940:39;:::i;:::-;7913:1;7906:5;7902:13;7893:22;;7869:120;;;7809:186;;:::o;8001:543::-;8102:2;8097:3;8094:11;8091:446;;;8136:38;8168:5;8136:38;:::i;:::-;8220:29;8238:10;8220:29;:::i;:::-;8210:8;8206:44;8403:2;8391:10;8388:18;8385:49;;;8424:8;8409:23;;8385:49;8447:80;8503:22;8521:3;8503:22;:::i;:::-;8493:8;8489:37;8476:11;8447:80;:::i;:::-;8106:431;;8091:446;8001:543;;;:::o;8550:117::-;8604:8;8654:5;8648:4;8644:16;8623:37;;8550:117;;;;:::o;8673:169::-;8717:6;8750:51;8798:1;8794:6;8786:5;8783:1;8779:13;8750:51;:::i;:::-;8746:56;8831:4;8825;8821:15;8811:25;;8724:118;8673:169;;;;:::o;8847:295::-;8923:4;9069:29;9094:3;9088:4;9069:29;:::i;:::-;9061:37;;9131:3;9128:1;9124:11;9118:4;9115:21;9107:29;;8847:295;;;;:::o;9147:1403::-;9271:44;9311:3;9306;9271:44;:::i;:::-;9380:18;9372:6;9369:30;9366:56;;;9402:18;;:::i;:::-;9366:56;9446:38;9478:4;9472:11;9446:38;:::i;:::-;9531:67;9591:6;9583;9577:4;9531:67;:::i;:::-;9625:1;9654:2;9646:6;9643:14;9671:1;9666:632;;;;10342:1;10359:6;10356:84;;;10415:9;10410:3;10406:19;10393:33;10384:42;;10356:84;10466:67;10526:6;10519:5;10466:67;:::i;:::-;10460:4;10453:81;10315:229;9636:908;;9666:632;9718:4;9714:9;9706:6;9702:22;9752:37;9784:4;9752:37;:::i;:::-;9811:1;9825:215;9839:7;9836:1;9833:14;9825:215;;;9925:9;9920:3;9916:19;9903:33;9895:6;9888:49;9976:1;9968:6;9964:14;9954:24;;10023:2;10012:9;10008:18;9995:31;;9862:4;9859:1;9855:12;9850:17;;9825:215;;;10068:6;10059:7;10056:19;10053:186;;;10133:9;10128:3;10124:19;10111:33;10176:48;10218:4;10210:6;10206:17;10195:9;10176:48;:::i;:::-;10168:6;10161:64;10076:163;10053:186;10285:1;10281;10273:6;10269:14;10265:22;10259:4;10252:36;9673:625;;;9636:908;;9246:1304;;;9147:1403;;;:::o" | |
}, | |
"gasEstimates": { | |
"creation": { | |
"codeDepositCost": "453600", | |
"executionCost": "infinite", | |
"totalCost": "infinite" | |
}, | |
"external": { | |
"helloWorld()": "infinite", | |
"owner()": "2514", | |
"setText(string)": "infinite", | |
"transferOwnership(address)": "26936" | |
} | |
}, | |
"legacyAssembly": { | |
".code": [ | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "80" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "CALLVALUE", | |
"source": 0 | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "ISZERO", | |
"source": 0 | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "REVERT", | |
"source": 0 | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "tag", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 149, | |
"end": 228, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "PUSH", | |
"source": 0, | |
"value": "B" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "PUSH", | |
"source": 0, | |
"value": "20" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "PUSH", | |
"source": 0, | |
"value": "48656C6C6F20576F726C64000000000000000000000000000000000000000000" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 177, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "4" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "5" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "tag", | |
"source": 0, | |
"value": "4" | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 173, | |
"end": 193, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 211, | |
"end": 221, | |
"name": "CALLER", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 208, | |
"name": "PUSH", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 203, | |
"end": 208, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "PUSH", | |
"source": 0, | |
"value": "100" | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "EXP", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "SLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "MUL", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "NOT", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "DUP4", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "MUL", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "OR", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "SSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 203, | |
"end": 221, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "6" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 7, | |
"end": 106, | |
"name": "tag", | |
"source": 1, | |
"value": "7" | |
}, | |
{ | |
"begin": 7, | |
"end": 106, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 59, | |
"end": 65, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 93, | |
"end": 98, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 87, | |
"end": 99, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 77, | |
"end": 99, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 77, | |
"end": 99, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 7, | |
"end": 106, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 7, | |
"end": 106, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 7, | |
"end": 106, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 7, | |
"end": 106, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 112, | |
"end": 292, | |
"name": "tag", | |
"source": 1, | |
"value": "8" | |
}, | |
{ | |
"begin": 112, | |
"end": 292, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 160, | |
"end": 237, | |
"name": "PUSH", | |
"source": 1, | |
"value": "4E487B7100000000000000000000000000000000000000000000000000000000" | |
}, | |
{ | |
"begin": 157, | |
"end": 158, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 150, | |
"end": 238, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 257, | |
"end": 261, | |
"name": "PUSH", | |
"source": 1, | |
"value": "41" | |
}, | |
{ | |
"begin": 254, | |
"end": 255, | |
"name": "PUSH", | |
"source": 1, | |
"value": "4" | |
}, | |
{ | |
"begin": 247, | |
"end": 262, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 281, | |
"end": 285, | |
"name": "PUSH", | |
"source": 1, | |
"value": "24" | |
}, | |
{ | |
"begin": 278, | |
"end": 279, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 271, | |
"end": 286, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 298, | |
"end": 478, | |
"name": "tag", | |
"source": 1, | |
"value": "9" | |
}, | |
{ | |
"begin": 298, | |
"end": 478, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 346, | |
"end": 423, | |
"name": "PUSH", | |
"source": 1, | |
"value": "4E487B7100000000000000000000000000000000000000000000000000000000" | |
}, | |
{ | |
"begin": 343, | |
"end": 344, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 336, | |
"end": 424, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 443, | |
"end": 447, | |
"name": "PUSH", | |
"source": 1, | |
"value": "22" | |
}, | |
{ | |
"begin": 440, | |
"end": 441, | |
"name": "PUSH", | |
"source": 1, | |
"value": "4" | |
}, | |
{ | |
"begin": 433, | |
"end": 448, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 467, | |
"end": 471, | |
"name": "PUSH", | |
"source": 1, | |
"value": "24" | |
}, | |
{ | |
"begin": 464, | |
"end": 465, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 457, | |
"end": 472, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 484, | |
"end": 804, | |
"name": "tag", | |
"source": 1, | |
"value": "10" | |
}, | |
{ | |
"begin": 484, | |
"end": 804, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 528, | |
"end": 534, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 565, | |
"end": 566, | |
"name": "PUSH", | |
"source": 1, | |
"value": "2" | |
}, | |
{ | |
"begin": 559, | |
"end": 563, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 555, | |
"end": 567, | |
"name": "DIV", | |
"source": 1 | |
}, | |
{ | |
"begin": 545, | |
"end": 567, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 545, | |
"end": 567, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 612, | |
"end": 613, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 606, | |
"end": 610, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 602, | |
"end": 614, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 633, | |
"end": 651, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 623, | |
"end": 704, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "32" | |
}, | |
{ | |
"begin": 623, | |
"end": 704, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 689, | |
"end": 693, | |
"name": "PUSH", | |
"source": 1, | |
"value": "7F" | |
}, | |
{ | |
"begin": 681, | |
"end": 687, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 677, | |
"end": 694, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 667, | |
"end": 694, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 667, | |
"end": 694, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 623, | |
"end": 704, | |
"name": "tag", | |
"source": 1, | |
"value": "32" | |
}, | |
{ | |
"begin": 623, | |
"end": 704, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 751, | |
"end": 753, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 743, | |
"end": 749, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 740, | |
"end": 754, | |
"name": "LT", | |
"source": 1 | |
}, | |
{ | |
"begin": 720, | |
"end": 738, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 717, | |
"end": 755, | |
"name": "SUB", | |
"source": 1 | |
}, | |
{ | |
"begin": 714, | |
"end": 798, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "33" | |
}, | |
{ | |
"begin": 714, | |
"end": 798, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 770, | |
"end": 788, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "34" | |
}, | |
{ | |
"begin": 770, | |
"end": 788, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "9" | |
}, | |
{ | |
"begin": 770, | |
"end": 788, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 770, | |
"end": 788, | |
"name": "tag", | |
"source": 1, | |
"value": "34" | |
}, | |
{ | |
"begin": 770, | |
"end": 788, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 714, | |
"end": 798, | |
"name": "tag", | |
"source": 1, | |
"value": "33" | |
}, | |
{ | |
"begin": 714, | |
"end": 798, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 535, | |
"end": 804, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 484, | |
"end": 804, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 484, | |
"end": 804, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 484, | |
"end": 804, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 484, | |
"end": 804, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 810, | |
"end": 951, | |
"name": "tag", | |
"source": 1, | |
"value": "11" | |
}, | |
{ | |
"begin": 810, | |
"end": 951, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 859, | |
"end": 863, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 882, | |
"end": 885, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 874, | |
"end": 885, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 874, | |
"end": 885, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 905, | |
"end": 908, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 902, | |
"end": 903, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 895, | |
"end": 909, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 939, | |
"end": 943, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 936, | |
"end": 937, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 926, | |
"end": 944, | |
"name": "KECCAK256", | |
"source": 1 | |
}, | |
{ | |
"begin": 918, | |
"end": 944, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 918, | |
"end": 944, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 810, | |
"end": 951, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 810, | |
"end": 951, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 810, | |
"end": 951, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 810, | |
"end": 951, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 957, | |
"end": 1050, | |
"name": "tag", | |
"source": 1, | |
"value": "12" | |
}, | |
{ | |
"begin": 957, | |
"end": 1050, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 994, | |
"end": 1000, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1041, | |
"end": 1043, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 1036, | |
"end": 1038, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 1029, | |
"end": 1034, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1025, | |
"end": 1039, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 1021, | |
"end": 1044, | |
"name": "DIV", | |
"source": 1 | |
}, | |
{ | |
"begin": 1011, | |
"end": 1044, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1011, | |
"end": 1044, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 957, | |
"end": 1050, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 957, | |
"end": 1050, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 957, | |
"end": 1050, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 957, | |
"end": 1050, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1056, | |
"end": 1163, | |
"name": "tag", | |
"source": 1, | |
"value": "13" | |
}, | |
{ | |
"begin": 1056, | |
"end": 1163, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1100, | |
"end": 1108, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1150, | |
"end": 1155, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1144, | |
"end": 1148, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1140, | |
"end": 1156, | |
"name": "SHL", | |
"source": 1 | |
}, | |
{ | |
"begin": 1119, | |
"end": 1156, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1119, | |
"end": 1156, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1056, | |
"end": 1163, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1056, | |
"end": 1163, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1056, | |
"end": 1163, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1056, | |
"end": 1163, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1056, | |
"end": 1163, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1169, | |
"end": 1562, | |
"name": "tag", | |
"source": 1, | |
"value": "14" | |
}, | |
{ | |
"begin": 1169, | |
"end": 1562, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1238, | |
"end": 1244, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1288, | |
"end": 1289, | |
"name": "PUSH", | |
"source": 1, | |
"value": "8" | |
}, | |
{ | |
"begin": 1276, | |
"end": 1286, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1272, | |
"end": 1290, | |
"name": "MUL", | |
"source": 1 | |
}, | |
{ | |
"begin": 1311, | |
"end": 1408, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "39" | |
}, | |
{ | |
"begin": 1341, | |
"end": 1407, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 1330, | |
"end": 1339, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1311, | |
"end": 1408, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "13" | |
}, | |
{ | |
"begin": 1311, | |
"end": 1408, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1311, | |
"end": 1408, | |
"name": "tag", | |
"source": 1, | |
"value": "39" | |
}, | |
{ | |
"begin": 1311, | |
"end": 1408, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1429, | |
"end": 1468, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 1459, | |
"end": 1467, | |
"name": "DUP7", | |
"source": 1 | |
}, | |
{ | |
"begin": 1448, | |
"end": 1457, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1429, | |
"end": 1468, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "13" | |
}, | |
{ | |
"begin": 1429, | |
"end": 1468, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1429, | |
"end": 1468, | |
"name": "tag", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 1429, | |
"end": 1468, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1417, | |
"end": 1468, | |
"name": "SWAP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 1417, | |
"end": 1468, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1501, | |
"end": 1505, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1497, | |
"end": 1506, | |
"name": "NOT", | |
"source": 1 | |
}, | |
{ | |
"begin": 1490, | |
"end": 1495, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 1486, | |
"end": 1507, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 1477, | |
"end": 1507, | |
"name": "SWAP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1477, | |
"end": 1507, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1550, | |
"end": 1554, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1540, | |
"end": 1548, | |
"name": "DUP7", | |
"source": 1 | |
}, | |
{ | |
"begin": 1536, | |
"end": 1555, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 1529, | |
"end": 1534, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 1526, | |
"end": 1556, | |
"name": "OR", | |
"source": 1 | |
}, | |
{ | |
"begin": 1516, | |
"end": 1556, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1516, | |
"end": 1556, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1245, | |
"end": 1562, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1245, | |
"end": 1562, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1169, | |
"end": 1562, | |
"name": "SWAP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1169, | |
"end": 1562, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1169, | |
"end": 1562, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1169, | |
"end": 1562, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1169, | |
"end": 1562, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1169, | |
"end": 1562, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1568, | |
"end": 1645, | |
"name": "tag", | |
"source": 1, | |
"value": "15" | |
}, | |
{ | |
"begin": 1568, | |
"end": 1645, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1605, | |
"end": 1612, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1634, | |
"end": 1639, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1623, | |
"end": 1639, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1623, | |
"end": 1639, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1568, | |
"end": 1645, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1568, | |
"end": 1645, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1568, | |
"end": 1645, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1568, | |
"end": 1645, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1651, | |
"end": 1711, | |
"name": "tag", | |
"source": 1, | |
"value": "16" | |
}, | |
{ | |
"begin": 1651, | |
"end": 1711, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1679, | |
"end": 1682, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1700, | |
"end": 1705, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1693, | |
"end": 1705, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1693, | |
"end": 1705, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1651, | |
"end": 1711, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1651, | |
"end": 1711, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1651, | |
"end": 1711, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1651, | |
"end": 1711, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1717, | |
"end": 1859, | |
"name": "tag", | |
"source": 1, | |
"value": "17" | |
}, | |
{ | |
"begin": 1717, | |
"end": 1859, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1767, | |
"end": 1776, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1800, | |
"end": 1853, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "44" | |
}, | |
{ | |
"begin": 1818, | |
"end": 1852, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "45" | |
}, | |
{ | |
"begin": 1827, | |
"end": 1851, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "46" | |
}, | |
{ | |
"begin": 1845, | |
"end": 1850, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 1827, | |
"end": 1851, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "15" | |
}, | |
{ | |
"begin": 1827, | |
"end": 1851, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1827, | |
"end": 1851, | |
"name": "tag", | |
"source": 1, | |
"value": "46" | |
}, | |
{ | |
"begin": 1827, | |
"end": 1851, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1818, | |
"end": 1852, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "16" | |
}, | |
{ | |
"begin": 1818, | |
"end": 1852, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1818, | |
"end": 1852, | |
"name": "tag", | |
"source": 1, | |
"value": "45" | |
}, | |
{ | |
"begin": 1818, | |
"end": 1852, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1800, | |
"end": 1853, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "15" | |
}, | |
{ | |
"begin": 1800, | |
"end": 1853, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1800, | |
"end": 1853, | |
"name": "tag", | |
"source": 1, | |
"value": "44" | |
}, | |
{ | |
"begin": 1800, | |
"end": 1853, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1787, | |
"end": 1853, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1787, | |
"end": 1853, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1717, | |
"end": 1859, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1717, | |
"end": 1859, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1717, | |
"end": 1859, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1717, | |
"end": 1859, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1865, | |
"end": 1940, | |
"name": "tag", | |
"source": 1, | |
"value": "18" | |
}, | |
{ | |
"begin": 1865, | |
"end": 1940, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1908, | |
"end": 1911, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1929, | |
"end": 1934, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1922, | |
"end": 1934, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1922, | |
"end": 1934, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1865, | |
"end": 1940, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1865, | |
"end": 1940, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1865, | |
"end": 1940, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1865, | |
"end": 1940, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1946, | |
"end": 2215, | |
"name": "tag", | |
"source": 1, | |
"value": "19" | |
}, | |
{ | |
"begin": 1946, | |
"end": 2215, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2056, | |
"end": 2095, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "49" | |
}, | |
{ | |
"begin": 2087, | |
"end": 2094, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 2056, | |
"end": 2095, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "17" | |
}, | |
{ | |
"begin": 2056, | |
"end": 2095, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2056, | |
"end": 2095, | |
"name": "tag", | |
"source": 1, | |
"value": "49" | |
}, | |
{ | |
"begin": 2056, | |
"end": 2095, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2117, | |
"end": 2208, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "50" | |
}, | |
{ | |
"begin": 2166, | |
"end": 2207, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "51" | |
}, | |
{ | |
"begin": 2190, | |
"end": 2206, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2166, | |
"end": 2207, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "18" | |
}, | |
{ | |
"begin": 2166, | |
"end": 2207, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2166, | |
"end": 2207, | |
"name": "tag", | |
"source": 1, | |
"value": "51" | |
}, | |
{ | |
"begin": 2166, | |
"end": 2207, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2158, | |
"end": 2164, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 2151, | |
"end": 2155, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 2145, | |
"end": 2156, | |
"name": "SLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2117, | |
"end": 2208, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "14" | |
}, | |
{ | |
"begin": 2117, | |
"end": 2208, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2117, | |
"end": 2208, | |
"name": "tag", | |
"source": 1, | |
"value": "50" | |
}, | |
{ | |
"begin": 2117, | |
"end": 2208, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2111, | |
"end": 2115, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2104, | |
"end": 2209, | |
"name": "SSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 2022, | |
"end": 2215, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1946, | |
"end": 2215, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1946, | |
"end": 2215, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1946, | |
"end": 2215, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1946, | |
"end": 2215, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2221, | |
"end": 2294, | |
"name": "tag", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 2221, | |
"end": 2294, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2266, | |
"end": 2269, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 2221, | |
"end": 2294, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2221, | |
"end": 2294, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2300, | |
"end": 2489, | |
"name": "tag", | |
"source": 1, | |
"value": "21" | |
}, | |
{ | |
"begin": 2300, | |
"end": 2489, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2377, | |
"end": 2409, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "54" | |
}, | |
{ | |
"begin": 2377, | |
"end": 2409, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 2377, | |
"end": 2409, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2377, | |
"end": 2409, | |
"name": "tag", | |
"source": 1, | |
"value": "54" | |
}, | |
{ | |
"begin": 2377, | |
"end": 2409, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2418, | |
"end": 2483, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "55" | |
}, | |
{ | |
"begin": 2476, | |
"end": 2482, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2468, | |
"end": 2474, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 2462, | |
"end": 2466, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 2418, | |
"end": 2483, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "19" | |
}, | |
{ | |
"begin": 2418, | |
"end": 2483, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2418, | |
"end": 2483, | |
"name": "tag", | |
"source": 1, | |
"value": "55" | |
}, | |
{ | |
"begin": 2418, | |
"end": 2483, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2353, | |
"end": 2489, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2300, | |
"end": 2489, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2300, | |
"end": 2489, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2300, | |
"end": 2489, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2495, | |
"end": 2681, | |
"name": "tag", | |
"source": 1, | |
"value": "22" | |
}, | |
{ | |
"begin": 2495, | |
"end": 2681, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2555, | |
"end": 2675, | |
"name": "tag", | |
"source": 1, | |
"value": "57" | |
}, | |
{ | |
"begin": 2555, | |
"end": 2675, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2572, | |
"end": 2575, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2565, | |
"end": 2570, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2562, | |
"end": 2576, | |
"name": "LT", | |
"source": 1 | |
}, | |
{ | |
"begin": 2555, | |
"end": 2675, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 2555, | |
"end": 2675, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "59" | |
}, | |
{ | |
"begin": 2555, | |
"end": 2675, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 2626, | |
"end": 2665, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "60" | |
}, | |
{ | |
"begin": 2663, | |
"end": 2664, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 2656, | |
"end": 2661, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2626, | |
"end": 2665, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "21" | |
}, | |
{ | |
"begin": 2626, | |
"end": 2665, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2626, | |
"end": 2665, | |
"name": "tag", | |
"source": 1, | |
"value": "60" | |
}, | |
{ | |
"begin": 2626, | |
"end": 2665, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2599, | |
"end": 2600, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 2592, | |
"end": 2597, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2588, | |
"end": 2601, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2579, | |
"end": 2601, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2579, | |
"end": 2601, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2555, | |
"end": 2675, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "57" | |
}, | |
{ | |
"begin": 2555, | |
"end": 2675, | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2555, | |
"end": 2675, | |
"name": "tag", | |
"source": 1, | |
"value": "59" | |
}, | |
{ | |
"begin": 2555, | |
"end": 2675, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2495, | |
"end": 2681, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2495, | |
"end": 2681, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2495, | |
"end": 2681, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2687, | |
"end": 3230, | |
"name": "tag", | |
"source": 1, | |
"value": "23" | |
}, | |
{ | |
"begin": 2687, | |
"end": 3230, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2788, | |
"end": 2790, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 2783, | |
"end": 2786, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2780, | |
"end": 2791, | |
"name": "GT", | |
"source": 1 | |
}, | |
{ | |
"begin": 2777, | |
"end": 3223, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 2777, | |
"end": 3223, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "62" | |
}, | |
{ | |
"begin": 2777, | |
"end": 3223, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 2822, | |
"end": 2860, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "63" | |
}, | |
{ | |
"begin": 2854, | |
"end": 2859, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2822, | |
"end": 2860, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "11" | |
}, | |
{ | |
"begin": 2822, | |
"end": 2860, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2822, | |
"end": 2860, | |
"name": "tag", | |
"source": 1, | |
"value": "63" | |
}, | |
{ | |
"begin": 2822, | |
"end": 2860, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2906, | |
"end": 2935, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "64" | |
}, | |
{ | |
"begin": 2924, | |
"end": 2934, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 2906, | |
"end": 2935, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "12" | |
}, | |
{ | |
"begin": 2906, | |
"end": 2935, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2906, | |
"end": 2935, | |
"name": "tag", | |
"source": 1, | |
"value": "64" | |
}, | |
{ | |
"begin": 2906, | |
"end": 2935, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2896, | |
"end": 2904, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2892, | |
"end": 2936, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 3089, | |
"end": 3091, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 3077, | |
"end": 3087, | |
"name": "DUP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 3074, | |
"end": 3092, | |
"name": "LT", | |
"source": 1 | |
}, | |
{ | |
"begin": 3071, | |
"end": 3120, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 3071, | |
"end": 3120, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "65" | |
}, | |
{ | |
"begin": 3071, | |
"end": 3120, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 3110, | |
"end": 3118, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3095, | |
"end": 3118, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 3095, | |
"end": 3118, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3071, | |
"end": 3120, | |
"name": "tag", | |
"source": 1, | |
"value": "65" | |
}, | |
{ | |
"begin": 3071, | |
"end": 3120, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3133, | |
"end": 3213, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "66" | |
}, | |
{ | |
"begin": 3189, | |
"end": 3211, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "67" | |
}, | |
{ | |
"begin": 3207, | |
"end": 3210, | |
"name": "DUP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 3189, | |
"end": 3211, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "12" | |
}, | |
{ | |
"begin": 3189, | |
"end": 3211, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3189, | |
"end": 3211, | |
"name": "tag", | |
"source": 1, | |
"value": "67" | |
}, | |
{ | |
"begin": 3189, | |
"end": 3211, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3179, | |
"end": 3187, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 3175, | |
"end": 3212, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 3162, | |
"end": 3173, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3133, | |
"end": 3213, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "22" | |
}, | |
{ | |
"begin": 3133, | |
"end": 3213, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3133, | |
"end": 3213, | |
"name": "tag", | |
"source": 1, | |
"value": "66" | |
}, | |
{ | |
"begin": 3133, | |
"end": 3213, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2792, | |
"end": 3223, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2792, | |
"end": 3223, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2777, | |
"end": 3223, | |
"name": "tag", | |
"source": 1, | |
"value": "62" | |
}, | |
{ | |
"begin": 2777, | |
"end": 3223, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2687, | |
"end": 3230, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2687, | |
"end": 3230, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2687, | |
"end": 3230, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2687, | |
"end": 3230, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3236, | |
"end": 3353, | |
"name": "tag", | |
"source": 1, | |
"value": "24" | |
}, | |
{ | |
"begin": 3236, | |
"end": 3353, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3290, | |
"end": 3298, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 3340, | |
"end": 3345, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3334, | |
"end": 3338, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3330, | |
"end": 3346, | |
"name": "SHR", | |
"source": 1 | |
}, | |
{ | |
"begin": 3309, | |
"end": 3346, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 3309, | |
"end": 3346, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3236, | |
"end": 3353, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3236, | |
"end": 3353, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3236, | |
"end": 3353, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3236, | |
"end": 3353, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3236, | |
"end": 3353, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3359, | |
"end": 3528, | |
"name": "tag", | |
"source": 1, | |
"value": "25" | |
}, | |
{ | |
"begin": 3359, | |
"end": 3528, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3403, | |
"end": 3409, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 3436, | |
"end": 3487, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "70" | |
}, | |
{ | |
"begin": 3484, | |
"end": 3485, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 3480, | |
"end": 3486, | |
"name": "NOT", | |
"source": 1 | |
}, | |
{ | |
"begin": 3472, | |
"end": 3477, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 3469, | |
"end": 3470, | |
"name": "PUSH", | |
"source": 1, | |
"value": "8" | |
}, | |
{ | |
"begin": 3465, | |
"end": 3478, | |
"name": "MUL", | |
"source": 1 | |
}, | |
{ | |
"begin": 3436, | |
"end": 3487, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "24" | |
}, | |
{ | |
"begin": 3436, | |
"end": 3487, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3436, | |
"end": 3487, | |
"name": "tag", | |
"source": 1, | |
"value": "70" | |
}, | |
{ | |
"begin": 3436, | |
"end": 3487, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3432, | |
"end": 3488, | |
"name": "NOT", | |
"source": 1 | |
}, | |
{ | |
"begin": 3517, | |
"end": 3521, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 3511, | |
"end": 3515, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 3507, | |
"end": 3522, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 3497, | |
"end": 3522, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3497, | |
"end": 3522, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3410, | |
"end": 3528, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3359, | |
"end": 3528, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3359, | |
"end": 3528, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3359, | |
"end": 3528, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3359, | |
"end": 3528, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3359, | |
"end": 3528, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3533, | |
"end": 3828, | |
"name": "tag", | |
"source": 1, | |
"value": "26" | |
}, | |
{ | |
"begin": 3533, | |
"end": 3828, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3609, | |
"end": 3613, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 3755, | |
"end": 3784, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "72" | |
}, | |
{ | |
"begin": 3780, | |
"end": 3783, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 3774, | |
"end": 3778, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 3755, | |
"end": 3784, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "25" | |
}, | |
{ | |
"begin": 3755, | |
"end": 3784, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3755, | |
"end": 3784, | |
"name": "tag", | |
"source": 1, | |
"value": "72" | |
}, | |
{ | |
"begin": 3755, | |
"end": 3784, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3747, | |
"end": 3784, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3747, | |
"end": 3784, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3817, | |
"end": 3820, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3814, | |
"end": 3815, | |
"name": "PUSH", | |
"source": 1, | |
"value": "2" | |
}, | |
{ | |
"begin": 3810, | |
"end": 3821, | |
"name": "MUL", | |
"source": 1 | |
}, | |
{ | |
"begin": 3804, | |
"end": 3808, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3801, | |
"end": 3822, | |
"name": "OR", | |
"source": 1 | |
}, | |
{ | |
"begin": 3793, | |
"end": 3822, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 3793, | |
"end": 3822, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3533, | |
"end": 3828, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3533, | |
"end": 3828, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3533, | |
"end": 3828, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3533, | |
"end": 3828, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3533, | |
"end": 3828, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3833, | |
"end": 5228, | |
"name": "tag", | |
"source": 1, | |
"value": "5" | |
}, | |
{ | |
"begin": 3833, | |
"end": 5228, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3950, | |
"end": 3987, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "74" | |
}, | |
{ | |
"begin": 3983, | |
"end": 3986, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3950, | |
"end": 3987, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "7" | |
}, | |
{ | |
"begin": 3950, | |
"end": 3987, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3950, | |
"end": 3987, | |
"name": "tag", | |
"source": 1, | |
"value": "74" | |
}, | |
{ | |
"begin": 3950, | |
"end": 3987, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4052, | |
"end": 4070, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 4044, | |
"end": 4050, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 4041, | |
"end": 4071, | |
"name": "GT", | |
"source": 1 | |
}, | |
{ | |
"begin": 4038, | |
"end": 4094, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 4038, | |
"end": 4094, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "75" | |
}, | |
{ | |
"begin": 4038, | |
"end": 4094, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 4074, | |
"end": 4092, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "76" | |
}, | |
{ | |
"begin": 4074, | |
"end": 4092, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "8" | |
}, | |
{ | |
"begin": 4074, | |
"end": 4092, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4074, | |
"end": 4092, | |
"name": "tag", | |
"source": 1, | |
"value": "76" | |
}, | |
{ | |
"begin": 4074, | |
"end": 4092, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4038, | |
"end": 4094, | |
"name": "tag", | |
"source": 1, | |
"value": "75" | |
}, | |
{ | |
"begin": 4038, | |
"end": 4094, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4118, | |
"end": 4156, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "77" | |
}, | |
{ | |
"begin": 4150, | |
"end": 4154, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 4144, | |
"end": 4155, | |
"name": "SLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 4118, | |
"end": 4156, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "10" | |
}, | |
{ | |
"begin": 4118, | |
"end": 4156, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4118, | |
"end": 4156, | |
"name": "tag", | |
"source": 1, | |
"value": "77" | |
}, | |
{ | |
"begin": 4118, | |
"end": 4156, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4203, | |
"end": 4270, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "78" | |
}, | |
{ | |
"begin": 4263, | |
"end": 4269, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 4255, | |
"end": 4261, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 4249, | |
"end": 4253, | |
"name": "DUP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 4203, | |
"end": 4270, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "23" | |
}, | |
{ | |
"begin": 4203, | |
"end": 4270, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4203, | |
"end": 4270, | |
"name": "tag", | |
"source": 1, | |
"value": "78" | |
}, | |
{ | |
"begin": 4203, | |
"end": 4270, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4297, | |
"end": 4298, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 4321, | |
"end": 4325, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 4308, | |
"end": 4325, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 4308, | |
"end": 4325, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4353, | |
"end": 4355, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 4345, | |
"end": 4351, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 4342, | |
"end": 4356, | |
"name": "GT", | |
"source": 1 | |
}, | |
{ | |
"begin": 4370, | |
"end": 4371, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 4365, | |
"end": 4983, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 4365, | |
"end": 4983, | |
"name": "EQ", | |
"source": 1 | |
}, | |
{ | |
"begin": 4365, | |
"end": 4983, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "80" | |
}, | |
{ | |
"begin": 4365, | |
"end": 4983, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 5027, | |
"end": 5028, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 5044, | |
"end": 5050, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 5041, | |
"end": 5118, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 5041, | |
"end": 5118, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "81" | |
}, | |
{ | |
"begin": 5041, | |
"end": 5118, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 5093, | |
"end": 5102, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 5088, | |
"end": 5091, | |
"name": "DUP8", | |
"source": 1 | |
}, | |
{ | |
"begin": 5084, | |
"end": 5103, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 5078, | |
"end": 5104, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 5069, | |
"end": 5104, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 5069, | |
"end": 5104, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 5041, | |
"end": 5118, | |
"name": "tag", | |
"source": 1, | |
"value": "81" | |
}, | |
{ | |
"begin": 5041, | |
"end": 5118, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 5144, | |
"end": 5211, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "82" | |
}, | |
{ | |
"begin": 5204, | |
"end": 5210, | |
"name": "DUP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 5197, | |
"end": 5202, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 5144, | |
"end": 5211, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "26" | |
}, | |
{ | |
"begin": 5144, | |
"end": 5211, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 5144, | |
"end": 5211, | |
"name": "tag", | |
"source": 1, | |
"value": "82" | |
}, | |
{ | |
"begin": 5144, | |
"end": 5211, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 5138, | |
"end": 5142, | |
"name": "DUP7", | |
"source": 1 | |
}, | |
{ | |
"begin": 5131, | |
"end": 5212, | |
"name": "SSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 5000, | |
"end": 5222, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4335, | |
"end": 5222, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "79" | |
}, | |
{ | |
"begin": 4335, | |
"end": 5222, | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4365, | |
"end": 4983, | |
"name": "tag", | |
"source": 1, | |
"value": "80" | |
}, | |
{ | |
"begin": 4365, | |
"end": 4983, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4417, | |
"end": 4421, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 4413, | |
"end": 4422, | |
"name": "NOT", | |
"source": 1 | |
}, | |
{ | |
"begin": 4405, | |
"end": 4411, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 4401, | |
"end": 4423, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 4451, | |
"end": 4488, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "83" | |
}, | |
{ | |
"begin": 4483, | |
"end": 4487, | |
"name": "DUP7", | |
"source": 1 | |
}, | |
{ | |
"begin": 4451, | |
"end": 4488, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "11" | |
}, | |
{ | |
"begin": 4451, | |
"end": 4488, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4451, | |
"end": 4488, | |
"name": "tag", | |
"source": 1, | |
"value": "83" | |
}, | |
{ | |
"begin": 4451, | |
"end": 4488, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4510, | |
"end": 4511, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 4524, | |
"end": 4732, | |
"name": "tag", | |
"source": 1, | |
"value": "84" | |
}, | |
{ | |
"begin": 4524, | |
"end": 4732, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4538, | |
"end": 4545, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 4535, | |
"end": 4536, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 4532, | |
"end": 4546, | |
"name": "LT", | |
"source": 1 | |
}, | |
{ | |
"begin": 4524, | |
"end": 4732, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 4524, | |
"end": 4732, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "86" | |
}, | |
{ | |
"begin": 4524, | |
"end": 4732, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 4617, | |
"end": 4626, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 4612, | |
"end": 4615, | |
"name": "DUP10", | |
"source": 1 | |
}, | |
{ | |
"begin": 4608, | |
"end": 4627, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 4602, | |
"end": 4628, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 4594, | |
"end": 4600, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 4587, | |
"end": 4629, | |
"name": "SSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 4668, | |
"end": 4669, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 4660, | |
"end": 4666, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 4656, | |
"end": 4670, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 4646, | |
"end": 4670, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 4646, | |
"end": 4670, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4715, | |
"end": 4717, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 4704, | |
"end": 4713, | |
"name": "DUP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 4700, | |
"end": 4718, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 4687, | |
"end": 4718, | |
"name": "SWAP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 4687, | |
"end": 4718, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4561, | |
"end": 4565, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 4558, | |
"end": 4559, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 4554, | |
"end": 4566, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 4549, | |
"end": 4566, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 4549, | |
"end": 4566, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4524, | |
"end": 4732, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "84" | |
}, | |
{ | |
"begin": 4524, | |
"end": 4732, | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4524, | |
"end": 4732, | |
"name": "tag", | |
"source": 1, | |
"value": "86" | |
}, | |
{ | |
"begin": 4524, | |
"end": 4732, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4760, | |
"end": 4766, | |
"name": "DUP7", | |
"source": 1 | |
}, | |
{ | |
"begin": 4751, | |
"end": 4758, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 4748, | |
"end": 4767, | |
"name": "LT", | |
"source": 1 | |
}, | |
{ | |
"begin": 4745, | |
"end": 4924, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 4745, | |
"end": 4924, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "87" | |
}, | |
{ | |
"begin": 4745, | |
"end": 4924, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 4818, | |
"end": 4827, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 4813, | |
"end": 4816, | |
"name": "DUP10", | |
"source": 1 | |
}, | |
{ | |
"begin": 4809, | |
"end": 4828, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 4803, | |
"end": 4829, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 4861, | |
"end": 4909, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "88" | |
}, | |
{ | |
"begin": 4903, | |
"end": 4907, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 4895, | |
"end": 4901, | |
"name": "DUP10", | |
"source": 1 | |
}, | |
{ | |
"begin": 4891, | |
"end": 4908, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 4880, | |
"end": 4889, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 4861, | |
"end": 4909, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "25" | |
}, | |
{ | |
"begin": 4861, | |
"end": 4909, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4861, | |
"end": 4909, | |
"name": "tag", | |
"source": 1, | |
"value": "88" | |
}, | |
{ | |
"begin": 4861, | |
"end": 4909, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4853, | |
"end": 4859, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 4846, | |
"end": 4910, | |
"name": "SSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 4768, | |
"end": 4924, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4745, | |
"end": 4924, | |
"name": "tag", | |
"source": 1, | |
"value": "87" | |
}, | |
{ | |
"begin": 4745, | |
"end": 4924, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4970, | |
"end": 4971, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 4966, | |
"end": 4967, | |
"name": "PUSH", | |
"source": 1, | |
"value": "2" | |
}, | |
{ | |
"begin": 4958, | |
"end": 4964, | |
"name": "DUP9", | |
"source": 1 | |
}, | |
{ | |
"begin": 4954, | |
"end": 4968, | |
"name": "MUL", | |
"source": 1 | |
}, | |
{ | |
"begin": 4950, | |
"end": 4972, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 4944, | |
"end": 4948, | |
"name": "DUP9", | |
"source": 1 | |
}, | |
{ | |
"begin": 4937, | |
"end": 4973, | |
"name": "SSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 4372, | |
"end": 4983, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4372, | |
"end": 4983, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4372, | |
"end": 4983, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 4335, | |
"end": 5222, | |
"name": "tag", | |
"source": 1, | |
"value": "79" | |
}, | |
{ | |
"begin": 4335, | |
"end": 5222, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 4335, | |
"end": 5222, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3925, | |
"end": 5228, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3925, | |
"end": 5228, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3925, | |
"end": 5228, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3833, | |
"end": 5228, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3833, | |
"end": 5228, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3833, | |
"end": 5228, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "tag", | |
"source": 0, | |
"value": "6" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH #[$]", | |
"source": 0, | |
"value": "0000000000000000000000000000000000000000000000000000000000000000" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH [$]", | |
"source": 0, | |
"value": "0000000000000000000000000000000000000000000000000000000000000000" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "CODECOPY", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "RETURN", | |
"source": 0 | |
} | |
], | |
".data": { | |
"0": { | |
".auxdata": "a264697066735822122017505db29d005a0ca7290a01a22e0cf9abe8543ef818189ad2148cbb95966fc064736f6c63430008120033", | |
".code": [ | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "80" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "CALLVALUE", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "ISZERO", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "REVERT", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "tag", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "4" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "CALLDATASIZE", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "LT", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "2" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "CALLDATALOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "E0" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "SHR", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "5D3A1F9D" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "EQ", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "3" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "8DA5CB5B" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "EQ", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "4" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "C605F76C" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "EQ", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "5" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "F2FDE38B" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "EQ", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "6" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "tag", | |
"source": 0, | |
"value": "2" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 69, | |
"end": 634, | |
"name": "REVERT", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "tag", | |
"source": 0, | |
"value": "3" | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "7" | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "PUSH", | |
"source": 0, | |
"value": "4" | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "CALLDATASIZE", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "SUB", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "8" | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "9" | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "tag", | |
"source": 0, | |
"value": "8" | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "10" | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "tag", | |
"source": 0, | |
"value": "7" | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "STOP", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "tag", | |
"source": 0, | |
"value": "4" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "11" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "12" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "tag", | |
"source": 0, | |
"value": "11" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "13" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "14" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "tag", | |
"source": 0, | |
"value": "13" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "SUB", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "RETURN", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "tag", | |
"source": 0, | |
"value": "5" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "15" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "16" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "tag", | |
"source": 0, | |
"value": "15" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "17" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "18" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "tag", | |
"source": 0, | |
"value": "17" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "SUB", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "RETURN", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "tag", | |
"source": 0, | |
"value": "6" | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "19" | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "PUSH", | |
"source": 0, | |
"value": "4" | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "CALLDATASIZE", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "SUB", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "20" | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "21" | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "tag", | |
"source": 0, | |
"value": "20" | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "22" | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "tag", | |
"source": 0, | |
"value": "19" | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "STOP", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "tag", | |
"source": 0, | |
"value": "10" | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "SLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "100" | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "EXP", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "DIV", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 567, | |
"end": 577, | |
"name": "CALLER", | |
"source": 0 | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "EQ", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "24" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH", | |
"source": 0, | |
"value": "8C379A000000000000000000000000000000000000000000000000000000000" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH", | |
"source": 0, | |
"value": "4" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "25" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "26" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "tag", | |
"source": 0, | |
"value": "25" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "SUB", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "REVERT", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "tag", | |
"source": 0, | |
"value": "24" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 402, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 402, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 395, | |
"end": 399, | |
"modifierDepth": 1, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "DUP3", | |
"source": 0 | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "28" | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "SWAP3", | |
"source": 0 | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "29" | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"jumpType": "[in]", | |
"modifierDepth": 1, | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "tag", | |
"source": 0, | |
"value": "28" | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 395, | |
"end": 409, | |
"modifierDepth": 1, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 326, | |
"end": 416, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "tag", | |
"source": 0, | |
"value": "12" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "SLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH", | |
"source": 0, | |
"value": "100" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "EXP", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "DIV", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 122, | |
"end": 142, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "tag", | |
"source": 0, | |
"value": "16" | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 277, | |
"end": 290, | |
"name": "PUSH", | |
"source": 0, | |
"value": "60" | |
}, | |
{ | |
"begin": 309, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "31" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "32" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "tag", | |
"source": 0, | |
"value": "31" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "1F" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "20" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DIV", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "MUL", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "20" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP3", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "20" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP3", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "33" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "32" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "tag", | |
"source": 0, | |
"value": "33" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ISZERO", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "34" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "1F" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "LT", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "35" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "100" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP4", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DIV", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "MUL", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP4", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "20" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "34" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "tag", | |
"source": 0, | |
"value": "35" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP3", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "20" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "KECCAK256", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "tag", | |
"source": 0, | |
"value": "36" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "20" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP4", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "GT", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "36" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP3", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SUB", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "PUSH", | |
"source": 0, | |
"value": "1F" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "DUP3", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "tag", | |
"source": 0, | |
"value": "34" | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 302, | |
"end": 313, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 234, | |
"end": 320, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "tag", | |
"source": 0, | |
"value": "22" | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "SLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "100" | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "EXP", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "DIV", | |
"source": 0 | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 581, | |
"end": 586, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 567, | |
"end": 577, | |
"name": "CALLER", | |
"source": 0 | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 567, | |
"end": 586, | |
"name": "EQ", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "38" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "JUMPI", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH", | |
"source": 0, | |
"value": "8C379A000000000000000000000000000000000000000000000000000000000" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "MSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH", | |
"source": 0, | |
"value": "4" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "ADD", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "39" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH [tag]", | |
"source": 0, | |
"value": "26" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "tag", | |
"source": 0, | |
"value": "39" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "PUSH", | |
"source": 0, | |
"value": "40" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "MLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "SWAP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "SUB", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "REVERT", | |
"source": 0 | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "tag", | |
"source": 0, | |
"value": "38" | |
}, | |
{ | |
"begin": 558, | |
"end": 614, | |
"name": "JUMPDEST", | |
"source": 0 | |
}, | |
{ | |
"begin": 502, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "DUP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 499, | |
"modifierDepth": 1, | |
"name": "PUSH", | |
"source": 0, | |
"value": "1" | |
}, | |
{ | |
"begin": 494, | |
"end": 499, | |
"modifierDepth": 1, | |
"name": "PUSH", | |
"source": 0, | |
"value": "0" | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "PUSH", | |
"source": 0, | |
"value": "100" | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "EXP", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "SLOAD", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "DUP2", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "MUL", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "NOT", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "DUP4", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "PUSH", | |
"source": 0, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "AND", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "MUL", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "OR", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "SWAP1", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "SSTORE", | |
"source": 0 | |
}, | |
{ | |
"begin": 494, | |
"end": 510, | |
"modifierDepth": 1, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"name": "POP", | |
"source": 0 | |
}, | |
{ | |
"begin": 422, | |
"end": 517, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 0 | |
}, | |
{ | |
"begin": 88, | |
"end": 205, | |
"name": "tag", | |
"source": 1, | |
"value": "42" | |
}, | |
{ | |
"begin": 88, | |
"end": 205, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 197, | |
"end": 198, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 194, | |
"end": 195, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 187, | |
"end": 199, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 211, | |
"end": 328, | |
"name": "tag", | |
"source": 1, | |
"value": "43" | |
}, | |
{ | |
"begin": 211, | |
"end": 328, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 320, | |
"end": 321, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 317, | |
"end": 318, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 310, | |
"end": 322, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 334, | |
"end": 451, | |
"name": "tag", | |
"source": 1, | |
"value": "44" | |
}, | |
{ | |
"begin": 334, | |
"end": 451, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 443, | |
"end": 444, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 440, | |
"end": 441, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 433, | |
"end": 445, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 457, | |
"end": 574, | |
"name": "tag", | |
"source": 1, | |
"value": "45" | |
}, | |
{ | |
"begin": 457, | |
"end": 574, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 566, | |
"end": 567, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 563, | |
"end": 564, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 556, | |
"end": 568, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 580, | |
"end": 697, | |
"name": "tag", | |
"source": 1, | |
"value": "46" | |
}, | |
{ | |
"begin": 580, | |
"end": 697, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 689, | |
"end": 690, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 686, | |
"end": 687, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 679, | |
"end": 691, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 717, | |
"end": 1270, | |
"name": "tag", | |
"source": 1, | |
"value": "47" | |
}, | |
{ | |
"begin": 717, | |
"end": 1270, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 775, | |
"end": 783, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 785, | |
"end": 791, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 835, | |
"end": 838, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 828, | |
"end": 832, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 820, | |
"end": 826, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 816, | |
"end": 833, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 812, | |
"end": 839, | |
"name": "SLT", | |
"source": 1 | |
}, | |
{ | |
"begin": 802, | |
"end": 924, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "87" | |
}, | |
{ | |
"begin": 802, | |
"end": 924, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 843, | |
"end": 922, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "88" | |
}, | |
{ | |
"begin": 843, | |
"end": 922, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "44" | |
}, | |
{ | |
"begin": 843, | |
"end": 922, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 843, | |
"end": 922, | |
"name": "tag", | |
"source": 1, | |
"value": "88" | |
}, | |
{ | |
"begin": 843, | |
"end": 922, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 802, | |
"end": 924, | |
"name": "tag", | |
"source": 1, | |
"value": "87" | |
}, | |
{ | |
"begin": 802, | |
"end": 924, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 956, | |
"end": 962, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 943, | |
"end": 963, | |
"name": "CALLDATALOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 933, | |
"end": 963, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 933, | |
"end": 963, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 986, | |
"end": 1004, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 978, | |
"end": 984, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 975, | |
"end": 1005, | |
"name": "GT", | |
"source": 1 | |
}, | |
{ | |
"begin": 972, | |
"end": 1089, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 972, | |
"end": 1089, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "89" | |
}, | |
{ | |
"begin": 972, | |
"end": 1089, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 1008, | |
"end": 1087, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "90" | |
}, | |
{ | |
"begin": 1008, | |
"end": 1087, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "45" | |
}, | |
{ | |
"begin": 1008, | |
"end": 1087, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1008, | |
"end": 1087, | |
"name": "tag", | |
"source": 1, | |
"value": "90" | |
}, | |
{ | |
"begin": 1008, | |
"end": 1087, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 972, | |
"end": 1089, | |
"name": "tag", | |
"source": 1, | |
"value": "89" | |
}, | |
{ | |
"begin": 972, | |
"end": 1089, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1122, | |
"end": 1126, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 1114, | |
"end": 1120, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1110, | |
"end": 1127, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 1098, | |
"end": 1127, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1098, | |
"end": 1127, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1176, | |
"end": 1179, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1168, | |
"end": 1172, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 1160, | |
"end": 1166, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1156, | |
"end": 1173, | |
"name": "MUL", | |
"source": 1 | |
}, | |
{ | |
"begin": 1146, | |
"end": 1154, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1142, | |
"end": 1174, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 1139, | |
"end": 1180, | |
"name": "GT", | |
"source": 1 | |
}, | |
{ | |
"begin": 1136, | |
"end": 1264, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 1136, | |
"end": 1264, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "91" | |
}, | |
{ | |
"begin": 1136, | |
"end": 1264, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 1183, | |
"end": 1262, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "92" | |
}, | |
{ | |
"begin": 1183, | |
"end": 1262, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "46" | |
}, | |
{ | |
"begin": 1183, | |
"end": 1262, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1183, | |
"end": 1262, | |
"name": "tag", | |
"source": 1, | |
"value": "92" | |
}, | |
{ | |
"begin": 1183, | |
"end": 1262, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1136, | |
"end": 1264, | |
"name": "tag", | |
"source": 1, | |
"value": "91" | |
}, | |
{ | |
"begin": 1136, | |
"end": 1264, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 717, | |
"end": 1270, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 717, | |
"end": 1270, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 717, | |
"end": 1270, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 717, | |
"end": 1270, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 717, | |
"end": 1270, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 717, | |
"end": 1270, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1276, | |
"end": 1805, | |
"name": "tag", | |
"source": 1, | |
"value": "9" | |
}, | |
{ | |
"begin": 1276, | |
"end": 1805, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1347, | |
"end": 1353, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1355, | |
"end": 1361, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1404, | |
"end": 1406, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 1392, | |
"end": 1401, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1383, | |
"end": 1390, | |
"name": "DUP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 1379, | |
"end": 1402, | |
"name": "SUB", | |
"source": 1 | |
}, | |
{ | |
"begin": 1375, | |
"end": 1407, | |
"name": "SLT", | |
"source": 1 | |
}, | |
{ | |
"begin": 1372, | |
"end": 1491, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 1372, | |
"end": 1491, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "94" | |
}, | |
{ | |
"begin": 1372, | |
"end": 1491, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 1410, | |
"end": 1489, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "95" | |
}, | |
{ | |
"begin": 1410, | |
"end": 1489, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "42" | |
}, | |
{ | |
"begin": 1410, | |
"end": 1489, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1410, | |
"end": 1489, | |
"name": "tag", | |
"source": 1, | |
"value": "95" | |
}, | |
{ | |
"begin": 1410, | |
"end": 1489, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1372, | |
"end": 1491, | |
"name": "tag", | |
"source": 1, | |
"value": "94" | |
}, | |
{ | |
"begin": 1372, | |
"end": 1491, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1558, | |
"end": 1559, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1547, | |
"end": 1556, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 1543, | |
"end": 1560, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 1530, | |
"end": 1561, | |
"name": "CALLDATALOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 1588, | |
"end": 1606, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 1580, | |
"end": 1586, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1577, | |
"end": 1607, | |
"name": "GT", | |
"source": 1 | |
}, | |
{ | |
"begin": 1574, | |
"end": 1691, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 1574, | |
"end": 1691, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "96" | |
}, | |
{ | |
"begin": 1574, | |
"end": 1691, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 1610, | |
"end": 1689, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "97" | |
}, | |
{ | |
"begin": 1610, | |
"end": 1689, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "43" | |
}, | |
{ | |
"begin": 1610, | |
"end": 1689, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1610, | |
"end": 1689, | |
"name": "tag", | |
"source": 1, | |
"value": "97" | |
}, | |
{ | |
"begin": 1610, | |
"end": 1689, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1574, | |
"end": 1691, | |
"name": "tag", | |
"source": 1, | |
"value": "96" | |
}, | |
{ | |
"begin": 1574, | |
"end": 1691, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1723, | |
"end": 1788, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "98" | |
}, | |
{ | |
"begin": 1780, | |
"end": 1787, | |
"name": "DUP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 1771, | |
"end": 1777, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1760, | |
"end": 1769, | |
"name": "DUP7", | |
"source": 1 | |
}, | |
{ | |
"begin": 1756, | |
"end": 1778, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 1723, | |
"end": 1788, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "47" | |
}, | |
{ | |
"begin": 1723, | |
"end": 1788, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1723, | |
"end": 1788, | |
"name": "tag", | |
"source": 1, | |
"value": "98" | |
}, | |
{ | |
"begin": 1723, | |
"end": 1788, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1705, | |
"end": 1788, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1705, | |
"end": 1788, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1705, | |
"end": 1788, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1705, | |
"end": 1788, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1501, | |
"end": 1798, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1276, | |
"end": 1805, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1276, | |
"end": 1805, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1276, | |
"end": 1805, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1276, | |
"end": 1805, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1276, | |
"end": 1805, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1276, | |
"end": 1805, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1811, | |
"end": 1937, | |
"name": "tag", | |
"source": 1, | |
"value": "48" | |
}, | |
{ | |
"begin": 1811, | |
"end": 1937, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1848, | |
"end": 1855, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 1888, | |
"end": 1930, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 1881, | |
"end": 1886, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 1877, | |
"end": 1931, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 1866, | |
"end": 1931, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1866, | |
"end": 1931, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1811, | |
"end": 1937, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1811, | |
"end": 1937, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1811, | |
"end": 1937, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1811, | |
"end": 1937, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1943, | |
"end": 2039, | |
"name": "tag", | |
"source": 1, | |
"value": "49" | |
}, | |
{ | |
"begin": 1943, | |
"end": 2039, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1980, | |
"end": 1987, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 2009, | |
"end": 2033, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "101" | |
}, | |
{ | |
"begin": 2027, | |
"end": 2032, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2009, | |
"end": 2033, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "48" | |
}, | |
{ | |
"begin": 2009, | |
"end": 2033, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2009, | |
"end": 2033, | |
"name": "tag", | |
"source": 1, | |
"value": "101" | |
}, | |
{ | |
"begin": 2009, | |
"end": 2033, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 1998, | |
"end": 2033, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1998, | |
"end": 2033, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1943, | |
"end": 2039, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 1943, | |
"end": 2039, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 1943, | |
"end": 2039, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 1943, | |
"end": 2039, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2045, | |
"end": 2163, | |
"name": "tag", | |
"source": 1, | |
"value": "50" | |
}, | |
{ | |
"begin": 2045, | |
"end": 2163, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2132, | |
"end": 2156, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "103" | |
}, | |
{ | |
"begin": 2150, | |
"end": 2155, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2132, | |
"end": 2156, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "49" | |
}, | |
{ | |
"begin": 2132, | |
"end": 2156, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2132, | |
"end": 2156, | |
"name": "tag", | |
"source": 1, | |
"value": "103" | |
}, | |
{ | |
"begin": 2132, | |
"end": 2156, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2127, | |
"end": 2130, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2120, | |
"end": 2157, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 2045, | |
"end": 2163, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2045, | |
"end": 2163, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2045, | |
"end": 2163, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2169, | |
"end": 2391, | |
"name": "tag", | |
"source": 1, | |
"value": "14" | |
}, | |
{ | |
"begin": 2169, | |
"end": 2391, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2262, | |
"end": 2266, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 2300, | |
"end": 2302, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 2289, | |
"end": 2298, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2285, | |
"end": 2303, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2277, | |
"end": 2303, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2277, | |
"end": 2303, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2313, | |
"end": 2384, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "105" | |
}, | |
{ | |
"begin": 2381, | |
"end": 2382, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 2370, | |
"end": 2379, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 2366, | |
"end": 2383, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2357, | |
"end": 2363, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 2313, | |
"end": 2384, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "50" | |
}, | |
{ | |
"begin": 2313, | |
"end": 2384, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2313, | |
"end": 2384, | |
"name": "tag", | |
"source": 1, | |
"value": "105" | |
}, | |
{ | |
"begin": 2313, | |
"end": 2384, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2169, | |
"end": 2391, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2169, | |
"end": 2391, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2169, | |
"end": 2391, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2169, | |
"end": 2391, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2169, | |
"end": 2391, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2397, | |
"end": 2496, | |
"name": "tag", | |
"source": 1, | |
"value": "51" | |
}, | |
{ | |
"begin": 2397, | |
"end": 2496, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2449, | |
"end": 2455, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 2483, | |
"end": 2488, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2477, | |
"end": 2489, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2467, | |
"end": 2489, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2467, | |
"end": 2489, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2397, | |
"end": 2496, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2397, | |
"end": 2496, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2397, | |
"end": 2496, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2397, | |
"end": 2496, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2502, | |
"end": 2671, | |
"name": "tag", | |
"source": 1, | |
"value": "52" | |
}, | |
{ | |
"begin": 2502, | |
"end": 2671, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2586, | |
"end": 2597, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 2620, | |
"end": 2626, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2615, | |
"end": 2618, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2608, | |
"end": 2627, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 2660, | |
"end": 2664, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 2655, | |
"end": 2658, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2651, | |
"end": 2665, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2636, | |
"end": 2665, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2636, | |
"end": 2665, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2502, | |
"end": 2671, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2502, | |
"end": 2671, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2502, | |
"end": 2671, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2502, | |
"end": 2671, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2502, | |
"end": 2671, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2677, | |
"end": 2923, | |
"name": "tag", | |
"source": 1, | |
"value": "53" | |
}, | |
{ | |
"begin": 2677, | |
"end": 2923, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2758, | |
"end": 2759, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 2768, | |
"end": 2881, | |
"name": "tag", | |
"source": 1, | |
"value": "109" | |
}, | |
{ | |
"begin": 2768, | |
"end": 2881, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2782, | |
"end": 2788, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 2779, | |
"end": 2780, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2776, | |
"end": 2789, | |
"name": "LT", | |
"source": 1 | |
}, | |
{ | |
"begin": 2768, | |
"end": 2881, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 2768, | |
"end": 2881, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "111" | |
}, | |
{ | |
"begin": 2768, | |
"end": 2881, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 2867, | |
"end": 2868, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2862, | |
"end": 2865, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 2858, | |
"end": 2869, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2852, | |
"end": 2870, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2848, | |
"end": 2849, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2843, | |
"end": 2846, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 2839, | |
"end": 2850, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2832, | |
"end": 2871, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 2804, | |
"end": 2806, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 2801, | |
"end": 2802, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2797, | |
"end": 2807, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2792, | |
"end": 2807, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2792, | |
"end": 2807, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2768, | |
"end": 2881, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "109" | |
}, | |
{ | |
"begin": 2768, | |
"end": 2881, | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2768, | |
"end": 2881, | |
"name": "tag", | |
"source": 1, | |
"value": "111" | |
}, | |
{ | |
"begin": 2768, | |
"end": 2881, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2915, | |
"end": 2916, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 2906, | |
"end": 2912, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 2901, | |
"end": 2904, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 2897, | |
"end": 2913, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2890, | |
"end": 2917, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 2739, | |
"end": 2923, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2677, | |
"end": 2923, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2677, | |
"end": 2923, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2677, | |
"end": 2923, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2677, | |
"end": 2923, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2929, | |
"end": 3031, | |
"name": "tag", | |
"source": 1, | |
"value": "54" | |
}, | |
{ | |
"begin": 2929, | |
"end": 3031, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 2970, | |
"end": 2976, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 3021, | |
"end": 3023, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 3017, | |
"end": 3024, | |
"name": "NOT", | |
"source": 1 | |
}, | |
{ | |
"begin": 3012, | |
"end": 3014, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 3005, | |
"end": 3010, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 3001, | |
"end": 3015, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 2997, | |
"end": 3025, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 2987, | |
"end": 3025, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2987, | |
"end": 3025, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2929, | |
"end": 3031, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 2929, | |
"end": 3031, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 2929, | |
"end": 3031, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 2929, | |
"end": 3031, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3037, | |
"end": 3414, | |
"name": "tag", | |
"source": 1, | |
"value": "55" | |
}, | |
{ | |
"begin": 3037, | |
"end": 3414, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3125, | |
"end": 3128, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 3153, | |
"end": 3192, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "114" | |
}, | |
{ | |
"begin": 3186, | |
"end": 3191, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3153, | |
"end": 3192, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "51" | |
}, | |
{ | |
"begin": 3153, | |
"end": 3192, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3153, | |
"end": 3192, | |
"name": "tag", | |
"source": 1, | |
"value": "114" | |
}, | |
{ | |
"begin": 3153, | |
"end": 3192, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3208, | |
"end": 3279, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "115" | |
}, | |
{ | |
"begin": 3272, | |
"end": 3278, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3267, | |
"end": 3270, | |
"name": "DUP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 3208, | |
"end": 3279, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "52" | |
}, | |
{ | |
"begin": 3208, | |
"end": 3279, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3208, | |
"end": 3279, | |
"name": "tag", | |
"source": 1, | |
"value": "115" | |
}, | |
{ | |
"begin": 3208, | |
"end": 3279, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3201, | |
"end": 3279, | |
"name": "SWAP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 3201, | |
"end": 3279, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3288, | |
"end": 3353, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "116" | |
}, | |
{ | |
"begin": 3346, | |
"end": 3352, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3341, | |
"end": 3344, | |
"name": "DUP6", | |
"source": 1 | |
}, | |
{ | |
"begin": 3334, | |
"end": 3338, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 3327, | |
"end": 3332, | |
"name": "DUP7", | |
"source": 1 | |
}, | |
{ | |
"begin": 3323, | |
"end": 3339, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 3288, | |
"end": 3353, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "53" | |
}, | |
{ | |
"begin": 3288, | |
"end": 3353, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3288, | |
"end": 3353, | |
"name": "tag", | |
"source": 1, | |
"value": "116" | |
}, | |
{ | |
"begin": 3288, | |
"end": 3353, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3378, | |
"end": 3407, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "117" | |
}, | |
{ | |
"begin": 3400, | |
"end": 3406, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3378, | |
"end": 3407, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "54" | |
}, | |
{ | |
"begin": 3378, | |
"end": 3407, | |
"jumpType": "[in]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3378, | |
"end": 3407, | |
"name": "tag", | |
"source": 1, | |
"value": "117" | |
}, | |
{ | |
"begin": 3378, | |
"end": 3407, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3373, | |
"end": 3376, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 3369, | |
"end": 3408, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 3362, | |
"end": 3408, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3362, | |
"end": 3408, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3129, | |
"end": 3414, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3037, | |
"end": 3414, | |
"name": "SWAP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3037, | |
"end": 3414, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3037, | |
"end": 3414, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3037, | |
"end": 3414, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3037, | |
"end": 3414, | |
"jumpType": "[out]", | |
"name": "JUMP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3420, | |
"end": 3733, | |
"name": "tag", | |
"source": 1, | |
"value": "18" | |
}, | |
{ | |
"begin": 3420, | |
"end": 3733, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 3533, | |
"end": 3537, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 3571, | |
"end": 3573, | |
"name": "PUSH", | |
"source": 1, | |
"value": "20" | |
}, | |
{ | |
"begin": 3560, | |
"end": 3569, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 3556, | |
"end": 3574, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 3548, | |
"end": 3574, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 3548, | |
"end": 3574, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 3620, | |
"end": 3629, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3614, | |
"end": 3618, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3610, | |
"end": 3630, | |
"name": "SUB", | |
"source": 1 | |
}, | |
{ | |
"begin": 3606, | |
"end": 3607, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 3595, | |
"end": 3604, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 3591, | |
"end": 3608, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 3584, | |
"end": 3631, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 3648, | |
"end": 3726, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "119" | |
}, | |
{ | |
"begin": 3721, | |
"end": 3725, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 3712, | |
"end": 3718, | |
"name": "DUP5", | |
"source": 1 | |
}, | |
{ | |
"begin": 3648, | |
"end": 3726, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "55" | |
}, | |
{ | |
"be |
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