Skip to content

Instantly share code, notes, and snippets.

@kuzdogan
Created September 27, 2023 10:45
Show Gist options
  • Save kuzdogan/226eb0ae14255bc3555b3e9c9d26ee19 to your computer and use it in GitHub Desktop.
Save kuzdogan/226eb0ae14255bc3555b3e9c9d26ee19 to your computer and use it in GitHub Desktop.
SimpleStorageFactory Solc JSON output
This file has been truncated, but you can view the full file.
{
"contracts": {
"contracts/SimpleStorage.sol": {
"SimpleStorage": {
"abi": [
{
"inputs": [
{
"internalType": "string",
"name": "_name",
"type": "string"
},
{
"internalType": "uint256",
"name": "_favoriteNumber",
"type": "uint256"
}
],
"name": "addPerson",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"name": "nameToFavoriteNumber",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "people",
"outputs": [
{
"internalType": "uint256",
"name": "favoriteNumber",
"type": "uint256"
},
{
"internalType": "string",
"name": "name",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "retrieve",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_favoriteNumber",
"type": "uint256"
}
],
"name": "store",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/SimpleStorage.sol\":56:796 contract SimpleStorage {... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/SimpleStorage.sol\":56:796 contract SimpleStorage {... */\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 0x2e64cec1\n eq\n tag_3\n jumpi\n dup1\n 0x6057361d\n eq\n tag_4\n jumpi\n dup1\n 0x6f760f41\n eq\n tag_5\n jumpi\n dup1\n 0x8bab8dd5\n eq\n tag_6\n jumpi\n dup1\n 0x9e7a13ad\n eq\n tag_7\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/SimpleStorage.sol\":514:601 function retrieve() public view returns (uint256){... */\n tag_3:\n /* \"contracts/SimpleStorage.sol\":555:562 uint256 */\n 0x00\n /* \"contracts/SimpleStorage.sol\":580:594 favoriteNumber */\n sload\n /* \"contracts/SimpleStorage.sol\":514:601 function retrieve() public view returns (uint256){... */\n tag_8:\n mload(0x40)\n /* \"#utility.yul\":160:185 */\n swap1\n dup2\n mstore\n /* \"#utility.yul\":148:150 */\n 0x20\n /* \"#utility.yul\":133:151 */\n add\n /* \"contracts/SimpleStorage.sol\":514:601 function retrieve() public view returns (uint256){... */\n tag_10:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/SimpleStorage.sol\":412:508 function store(uint256 _favoriteNumber) public {... */\n tag_4:\n tag_12\n tag_13\n calldatasize\n 0x04\n tag_14\n jump\t// in\n tag_13:\n /* \"contracts/SimpleStorage.sol\":469:483 favoriteNumber */\n 0x00\n /* \"contracts/SimpleStorage.sol\":469:501 favoriteNumber = _favoriteNumber */\n sstore\n /* \"contracts/SimpleStorage.sol\":412:508 function store(uint256 _favoriteNumber) public {... */\n jump\n tag_12:\n stop\n /* \"contracts/SimpleStorage.sol\":607:794 function addPerson(string memory _name, uint256 _favoriteNumber) public {... */\n tag_5:\n tag_12\n tag_17\n calldatasize\n 0x04\n tag_18\n jump\t// in\n tag_17:\n tag_19\n jump\t// in\n /* \"contracts/SimpleStorage.sol\":351:405 mapping(string => uint256) public nameToFavoriteNumber */\n tag_6:\n tag_8\n tag_21\n calldatasize\n 0x04\n tag_22\n jump\t// in\n tag_21:\n dup1\n mload\n 0x20\n dup2\n dup4\n add\n dup2\n add\n dup1\n mload\n 0x02\n dup3\n mstore\n swap3\n dup3\n add\n swap2\n swap1\n swap4\n add\n keccak256\n swap2\n mstore\n sload\n dup2\n jump\n /* \"contracts/SimpleStorage.sol\":322:344 People[] public people */\n tag_7:\n tag_25\n tag_26\n calldatasize\n 0x04\n tag_14\n jump\t// in\n tag_26:\n tag_27\n jump\t// in\n tag_25:\n mload(0x40)\n tag_10\n swap3\n swap2\n swap1\n tag_29\n jump\t// in\n /* \"contracts/SimpleStorage.sol\":607:794 function addPerson(string memory _name, uint256 _favoriteNumber) public {... */\n tag_19:\n /* \"contracts/SimpleStorage.sol\":701:731 People(_favoriteNumber, _name) */\n 0x40\n dup1\n mload\n dup1\n dup3\n add\n swap1\n swap2\n mstore\n dup2\n dup2\n mstore\n 0x20\n dup2\n add\n dup4\n dup2\n mstore\n /* \"contracts/SimpleStorage.sol\":689:695 people */\n 0x01\n /* \"contracts/SimpleStorage.sol\":689:732 people.push(People(_favoriteNumber, _name)) */\n dup1\n sload\n dup1\n dup3\n add\n dup3\n sstore\n 0x00\n swap2\n swap1\n swap2\n mstore\n dup3\n mload\n 0x02\n swap1\n swap2\n mul\n 0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6\n dup2\n add\n swap2\n dup3\n sstore\n swap2\n mload\n swap1\n swap2\n 0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7\n add\n swap1\n tag_34\n swap1\n dup3\n tag_35\n jump\t// in\n tag_34:\n pop\n pop\n pop\n /* \"contracts/SimpleStorage.sol\":772:787 _favoriteNumber */\n dup1\n /* \"contracts/SimpleStorage.sol\":742:762 nameToFavoriteNumber */\n 0x02\n /* \"contracts/SimpleStorage.sol\":763:768 _name */\n dup4\n /* \"contracts/SimpleStorage.sol\":742:769 nameToFavoriteNumber[_name] */\n mload(0x40)\n tag_36\n swap2\n swap1\n tag_37\n jump\t// in\n tag_36:\n swap1\n dup2\n mstore\n mload(0x40)\n swap1\n dup2\n swap1\n sub\n 0x20\n add\n swap1\n keccak256\n /* \"contracts/SimpleStorage.sol\":742:787 nameToFavoriteNumber[_name] = _favoriteNumber */\n sstore\n pop\n pop\n /* \"contracts/SimpleStorage.sol\":607:794 function addPerson(string memory _name, uint256 _favoriteNumber) public {... */\n jump\t// out\n /* \"contracts/SimpleStorage.sol\":322:344 People[] public people */\n tag_27:\n 0x01\n dup2\n dup2\n sload\n dup2\n lt\n tag_38\n jumpi\n 0x00\n dup1\n revert\n tag_38:\n 0x00\n swap2\n dup3\n mstore\n 0x20\n swap1\n swap2\n keccak256\n 0x02\n swap1\n swap2\n mul\n add\n dup1\n sload\n 0x01\n dup3\n add\n dup1\n sload\n swap2\n swap4\n pop\n swap1\n tag_40\n swap1\n tag_41\n jump\t// in\n tag_40:\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_42\n swap1\n tag_41\n jump\t// in\n tag_42:\n dup1\n iszero\n tag_43\n jumpi\n dup1\n 0x1f\n lt\n tag_44\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_43)\n tag_44:\n dup3\n add\n swap2\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n tag_45:\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_45\n jumpi\n dup3\n swap1\n sub\n 0x1f\n and\n dup3\n add\n swap2\n tag_43:\n pop\n pop\n pop\n pop\n pop\n swap1\n pop\n dup3\n jump\t// out\n /* \"#utility.yul\":196:376 */\n tag_14:\n /* \"#utility.yul\":255:261 */\n 0x00\n /* \"#utility.yul\":308:310 */\n 0x20\n /* \"#utility.yul\":296:305 */\n dup3\n /* \"#utility.yul\":287:294 */\n dup5\n /* \"#utility.yul\":283:306 */\n sub\n /* \"#utility.yul\":279:311 */\n slt\n /* \"#utility.yul\":276:328 */\n iszero\n tag_55\n jumpi\n /* \"#utility.yul\":324:325 */\n 0x00\n /* \"#utility.yul\":321:322 */\n dup1\n /* \"#utility.yul\":314:326 */\n revert\n /* \"#utility.yul\":276:328 */\n tag_55:\n pop\n /* \"#utility.yul\":347:370 */\n calldataload\n swap2\n /* \"#utility.yul\":196:376 */\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":381:508 */\n tag_46:\n /* \"#utility.yul\":442:452 */\n 0x4e487b71\n /* \"#utility.yul\":437:440 */\n 0xe0\n /* \"#utility.yul\":433:453 */\n shl\n /* \"#utility.yul\":430:431 */\n 0x00\n /* \"#utility.yul\":423:454 */\n mstore\n /* \"#utility.yul\":473:477 */\n 0x41\n /* \"#utility.yul\":470:471 */\n 0x04\n /* \"#utility.yul\":463:478 */\n mstore\n /* \"#utility.yul\":497:501 */\n 0x24\n /* \"#utility.yul\":494:495 */\n 0x00\n /* \"#utility.yul\":487:502 */\n revert\n /* \"#utility.yul\":513:1232 */\n tag_47:\n /* \"#utility.yul\":556:561 */\n 0x00\n /* \"#utility.yul\":609:612 */\n dup3\n /* \"#utility.yul\":602:606 */\n 0x1f\n /* \"#utility.yul\":594:600 */\n dup4\n /* \"#utility.yul\":590:607 */\n add\n /* \"#utility.yul\":586:613 */\n slt\n /* \"#utility.yul\":576:631 */\n tag_58\n jumpi\n /* \"#utility.yul\":627:628 */\n 0x00\n /* \"#utility.yul\":624:625 */\n dup1\n /* \"#utility.yul\":617:629 */\n revert\n /* \"#utility.yul\":576:631 */\n tag_58:\n /* \"#utility.yul\":663:669 */\n dup2\n /* \"#utility.yul\":650:670 */\n calldataload\n /* \"#utility.yul\":689:707 */\n 0xffffffffffffffff\n /* \"#utility.yul\":726:728 */\n dup1\n /* \"#utility.yul\":722:724 */\n dup3\n /* \"#utility.yul\":719:729 */\n gt\n /* \"#utility.yul\":716:752 */\n iszero\n tag_60\n jumpi\n /* \"#utility.yul\":732:750 */\n tag_60\n tag_46\n jump\t// in\n tag_60:\n /* \"#utility.yul\":807:809 */\n 0x40\n /* \"#utility.yul\":801:810 */\n mload\n /* \"#utility.yul\":775:777 */\n 0x1f\n /* \"#utility.yul\":861:874 */\n dup4\n add\n not(0x1f)\n /* \"#utility.yul\":857:879 */\n swap1\n dup2\n and\n /* \"#utility.yul\":881:883 */\n 0x3f\n /* \"#utility.yul\":853:884 */\n add\n /* \"#utility.yul\":849:889 */\n and\n /* \"#utility.yul\":837:890 */\n dup2\n add\n swap1\n /* \"#utility.yul\":905:923 */\n dup3\n dup3\n gt\n /* \"#utility.yul\":925:947 */\n dup2\n dup4\n lt\n /* \"#utility.yul\":902:948 */\n or\n /* \"#utility.yul\":899:971 */\n iszero\n tag_62\n jumpi\n /* \"#utility.yul\":951:969 */\n tag_62\n tag_46\n jump\t// in\n tag_62:\n /* \"#utility.yul\":991:1001 */\n dup2\n /* \"#utility.yul\":987:989 */\n 0x40\n /* \"#utility.yul\":980:1002 */\n mstore\n /* \"#utility.yul\":1026:1028 */\n dup4\n /* \"#utility.yul\":1018:1024 */\n dup2\n /* \"#utility.yul\":1011:1029 */\n mstore\n /* \"#utility.yul\":1072:1075 */\n dup7\n /* \"#utility.yul\":1065:1069 */\n 0x20\n /* \"#utility.yul\":1060:1062 */\n dup6\n /* \"#utility.yul\":1052:1058 */\n dup9\n /* \"#utility.yul\":1048:1063 */\n add\n /* \"#utility.yul\":1044:1070 */\n add\n /* \"#utility.yul\":1041:1076 */\n gt\n /* \"#utility.yul\":1038:1093 */\n iszero\n tag_63\n jumpi\n /* \"#utility.yul\":1089:1090 */\n 0x00\n /* \"#utility.yul\":1086:1087 */\n dup1\n /* \"#utility.yul\":1079:1091 */\n revert\n /* \"#utility.yul\":1038:1093 */\n tag_63:\n /* \"#utility.yul\":1153:1155 */\n dup4\n /* \"#utility.yul\":1146:1150 */\n 0x20\n /* \"#utility.yul\":1138:1144 */\n dup8\n /* \"#utility.yul\":1134:1151 */\n add\n /* \"#utility.yul\":1127:1131 */\n 0x20\n /* \"#utility.yul\":1119:1125 */\n dup4\n /* \"#utility.yul\":1115:1132 */\n add\n /* \"#utility.yul\":1102:1156 */\n calldatacopy\n /* \"#utility.yul\":1200:1201 */\n 0x00\n /* \"#utility.yul\":1193:1197 */\n 0x20\n /* \"#utility.yul\":1188:1190 */\n dup6\n /* \"#utility.yul\":1180:1186 */\n dup4\n /* \"#utility.yul\":1176:1191 */\n add\n /* \"#utility.yul\":1172:1198 */\n add\n /* \"#utility.yul\":1165:1202 */\n mstore\n /* \"#utility.yul\":1220:1226 */\n dup1\n /* \"#utility.yul\":1211:1226 */\n swap5\n pop\n pop\n pop\n pop\n pop\n /* \"#utility.yul\":513:1232 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1237:1627 */\n tag_18:\n /* \"#utility.yul\":1315:1321 */\n 0x00\n /* \"#utility.yul\":1323:1329 */\n dup1\n /* \"#utility.yul\":1376:1378 */\n 0x40\n /* \"#utility.yul\":1364:1373 */\n dup4\n /* \"#utility.yul\":1355:1362 */\n dup6\n /* \"#utility.yul\":1351:1374 */\n sub\n /* \"#utility.yul\":1347:1379 */\n slt\n /* \"#utility.yul\":1344:1396 */\n iszero\n tag_65\n jumpi\n /* \"#utility.yul\":1392:1393 */\n 0x00\n /* \"#utility.yul\":1389:1390 */\n dup1\n /* \"#utility.yul\":1382:1394 */\n revert\n /* \"#utility.yul\":1344:1396 */\n tag_65:\n /* \"#utility.yul\":1432:1441 */\n dup3\n /* \"#utility.yul\":1419:1442 */\n calldataload\n /* \"#utility.yul\":1465:1483 */\n 0xffffffffffffffff\n /* \"#utility.yul\":1457:1463 */\n dup2\n /* \"#utility.yul\":1454:1484 */\n gt\n /* \"#utility.yul\":1451:1501 */\n iszero\n tag_66\n jumpi\n /* \"#utility.yul\":1497:1498 */\n 0x00\n /* \"#utility.yul\":1494:1495 */\n dup1\n /* \"#utility.yul\":1487:1499 */\n revert\n /* \"#utility.yul\":1451:1501 */\n tag_66:\n /* \"#utility.yul\":1520:1570 */\n tag_67\n /* \"#utility.yul\":1562:1569 */\n dup6\n /* \"#utility.yul\":1553:1559 */\n dup3\n /* \"#utility.yul\":1542:1551 */\n dup7\n /* \"#utility.yul\":1538:1560 */\n add\n /* \"#utility.yul\":1520:1570 */\n tag_47\n jump\t// in\n tag_67:\n /* \"#utility.yul\":1510:1570 */\n swap6\n /* \"#utility.yul\":1617:1619 */\n 0x20\n /* \"#utility.yul\":1602:1620 */\n swap5\n swap1\n swap5\n add\n /* \"#utility.yul\":1589:1621 */\n calldataload\n swap5\n pop\n pop\n pop\n pop\n /* \"#utility.yul\":1237:1627 */\n jump\t// out\n /* \"#utility.yul\":1632:1954 */\n tag_22:\n /* \"#utility.yul\":1701:1707 */\n 0x00\n /* \"#utility.yul\":1754:1756 */\n 0x20\n /* \"#utility.yul\":1742:1751 */\n dup3\n /* \"#utility.yul\":1733:1740 */\n dup5\n /* \"#utility.yul\":1729:1752 */\n sub\n /* \"#utility.yul\":1725:1757 */\n slt\n /* \"#utility.yul\":1722:1774 */\n iszero\n tag_69\n jumpi\n /* \"#utility.yul\":1770:1771 */\n 0x00\n /* \"#utility.yul\":1767:1768 */\n dup1\n /* \"#utility.yul\":1760:1772 */\n revert\n /* \"#utility.yul\":1722:1774 */\n tag_69:\n /* \"#utility.yul\":1810:1819 */\n dup2\n /* \"#utility.yul\":1797:1820 */\n calldataload\n /* \"#utility.yul\":1843:1861 */\n 0xffffffffffffffff\n /* \"#utility.yul\":1835:1841 */\n dup2\n /* \"#utility.yul\":1832:1862 */\n gt\n /* \"#utility.yul\":1829:1879 */\n iszero\n tag_70\n jumpi\n /* \"#utility.yul\":1875:1876 */\n 0x00\n /* \"#utility.yul\":1872:1873 */\n dup1\n /* \"#utility.yul\":1865:1877 */\n revert\n /* \"#utility.yul\":1829:1879 */\n tag_70:\n /* \"#utility.yul\":1898:1948 */\n tag_71\n /* \"#utility.yul\":1940:1947 */\n dup5\n /* \"#utility.yul\":1931:1937 */\n dup3\n /* \"#utility.yul\":1920:1929 */\n dup6\n /* \"#utility.yul\":1916:1938 */\n add\n /* \"#utility.yul\":1898:1948 */\n tag_47\n jump\t// in\n tag_71:\n /* \"#utility.yul\":1888:1948 */\n swap5\n /* \"#utility.yul\":1632:1954 */\n swap4\n pop\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1959:2209 */\n tag_48:\n /* \"#utility.yul\":2044:2045 */\n 0x00\n /* \"#utility.yul\":2054:2167 */\n tag_73:\n /* \"#utility.yul\":2068:2074 */\n dup4\n /* \"#utility.yul\":2065:2066 */\n dup2\n /* \"#utility.yul\":2062:2075 */\n lt\n /* \"#utility.yul\":2054:2167 */\n iszero\n tag_75\n jumpi\n /* \"#utility.yul\":2144:2155 */\n dup2\n dup2\n add\n /* \"#utility.yul\":2138:2156 */\n mload\n /* \"#utility.yul\":2125:2136 */\n dup4\n dup3\n add\n /* \"#utility.yul\":2118:2157 */\n mstore\n /* \"#utility.yul\":2090:2092 */\n 0x20\n /* \"#utility.yul\":2083:2093 */\n add\n /* \"#utility.yul\":2054:2167 */\n jump(tag_73)\n tag_75:\n pop\n pop\n /* \"#utility.yul\":2201:2202 */\n 0x00\n /* \"#utility.yul\":2183:2199 */\n swap2\n add\n /* \"#utility.yul\":2176:2203 */\n mstore\n /* \"#utility.yul\":1959:2209 */\n jump\t// out\n /* \"#utility.yul\":2214:2681 */\n tag_29:\n /* \"#utility.yul\":2391:2397 */\n dup3\n /* \"#utility.yul\":2380:2389 */\n dup2\n /* \"#utility.yul\":2373:2398 */\n mstore\n /* \"#utility.yul\":2434:2436 */\n 0x40\n /* \"#utility.yul\":2429:2431 */\n 0x20\n /* \"#utility.yul\":2418:2427 */\n dup3\n /* \"#utility.yul\":2414:2432 */\n add\n /* \"#utility.yul\":2407:2437 */\n mstore\n /* \"#utility.yul\":2354:2358 */\n 0x00\n /* \"#utility.yul\":2466:2472 */\n dup3\n /* \"#utility.yul\":2460:2473 */\n mload\n /* \"#utility.yul\":2509:2515 */\n dup1\n /* \"#utility.yul\":2504:2506 */\n 0x40\n /* \"#utility.yul\":2493:2502 */\n dup5\n /* \"#utility.yul\":2489:2507 */\n add\n /* \"#utility.yul\":2482:2516 */\n mstore\n /* \"#utility.yul\":2525:2604 */\n tag_77\n /* \"#utility.yul\":2597:2603 */\n dup2\n /* \"#utility.yul\":2592:2594 */\n 0x60\n /* \"#utility.yul\":2581:2590 */\n dup6\n /* \"#utility.yul\":2577:2595 */\n add\n /* \"#utility.yul\":2572:2574 */\n 0x20\n /* \"#utility.yul\":2564:2570 */\n dup8\n /* \"#utility.yul\":2560:2575 */\n add\n /* \"#utility.yul\":2525:2604 */\n tag_48\n jump\t// in\n tag_77:\n /* \"#utility.yul\":2665:2667 */\n 0x1f\n /* \"#utility.yul\":2644:2659 */\n add\n not(0x1f)\n /* \"#utility.yul\":2640:2669 */\n and\n /* \"#utility.yul\":2625:2670 */\n swap2\n swap1\n swap2\n add\n /* \"#utility.yul\":2672:2674 */\n 0x60\n /* \"#utility.yul\":2621:2675 */\n add\n swap4\n /* \"#utility.yul\":2214:2681 */\n swap3\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2686:3066 */\n tag_41:\n /* \"#utility.yul\":2765:2766 */\n 0x01\n /* \"#utility.yul\":2761:2773 */\n dup2\n dup2\n shr\n swap1\n /* \"#utility.yul\":2808:2820 */\n dup3\n and\n dup1\n /* \"#utility.yul\":2829:2890 */\n tag_79\n jumpi\n /* \"#utility.yul\":2883:2887 */\n 0x7f\n /* \"#utility.yul\":2875:2881 */\n dup3\n /* \"#utility.yul\":2871:2888 */\n and\n /* \"#utility.yul\":2861:2888 */\n swap2\n pop\n /* \"#utility.yul\":2829:2890 */\n tag_79:\n /* \"#utility.yul\":2936:2938 */\n 0x20\n /* \"#utility.yul\":2928:2934 */\n dup3\n /* \"#utility.yul\":2925:2939 */\n lt\n /* \"#utility.yul\":2905:2923 */\n dup2\n /* \"#utility.yul\":2902:2940 */\n sub\n /* \"#utility.yul\":2899:3060 */\n tag_80\n jumpi\n /* \"#utility.yul\":2982:2992 */\n 0x4e487b71\n /* \"#utility.yul\":2977:2980 */\n 0xe0\n /* \"#utility.yul\":2973:2993 */\n shl\n /* \"#utility.yul\":2970:2971 */\n 0x00\n /* \"#utility.yul\":2963:2994 */\n mstore\n /* \"#utility.yul\":3017:3021 */\n 0x22\n /* \"#utility.yul\":3014:3015 */\n 0x04\n /* \"#utility.yul\":3007:3022 */\n mstore\n /* \"#utility.yul\":3045:3049 */\n 0x24\n /* \"#utility.yul\":3042:3043 */\n 0x00\n /* \"#utility.yul\":3035:3050 */\n revert\n /* \"#utility.yul\":2899:3060 */\n tag_80:\n pop\n /* \"#utility.yul\":2686:3066 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3197:3742 */\n tag_50:\n /* \"#utility.yul\":3299:3301 */\n 0x1f\n /* \"#utility.yul\":3294:3297 */\n dup3\n /* \"#utility.yul\":3291:3302 */\n gt\n /* \"#utility.yul\":3288:3736 */\n iszero\n tag_83\n jumpi\n /* \"#utility.yul\":3335:3336 */\n 0x00\n /* \"#utility.yul\":3360:3365 */\n dup2\n /* \"#utility.yul\":3356:3358 */\n dup2\n /* \"#utility.yul\":3349:3366 */\n mstore\n /* \"#utility.yul\":3405:3409 */\n 0x20\n /* \"#utility.yul\":3401:3403 */\n dup2\n /* \"#utility.yul\":3391:3410 */\n keccak256\n /* \"#utility.yul\":3475:3477 */\n 0x1f\n /* \"#utility.yul\":3463:3473 */\n dup6\n /* \"#utility.yul\":3459:3478 */\n add\n /* \"#utility.yul\":3456:3457 */\n 0x05\n /* \"#utility.yul\":3452:3479 */\n shr\n /* \"#utility.yul\":3446:3450 */\n dup2\n /* \"#utility.yul\":3442:3480 */\n add\n /* \"#utility.yul\":3511:3515 */\n 0x20\n /* \"#utility.yul\":3499:3509 */\n dup7\n /* \"#utility.yul\":3496:3516 */\n lt\n /* \"#utility.yul\":3493:3540 */\n iszero\n tag_84\n jumpi\n pop\n /* \"#utility.yul\":3534:3538 */\n dup1\n /* \"#utility.yul\":3493:3540 */\n tag_84:\n /* \"#utility.yul\":3589:3591 */\n 0x1f\n /* \"#utility.yul\":3584:3587 */\n dup6\n /* \"#utility.yul\":3580:3592 */\n add\n /* \"#utility.yul\":3577:3578 */\n 0x05\n /* \"#utility.yul\":3573:3593 */\n shr\n /* \"#utility.yul\":3567:3571 */\n dup3\n /* \"#utility.yul\":3563:3594 */\n add\n /* \"#utility.yul\":3553:3594 */\n swap2\n pop\n /* \"#utility.yul\":3644:3726 */\n tag_85:\n /* \"#utility.yul\":3662:3664 */\n dup2\n /* \"#utility.yul\":3655:3660 */\n dup2\n /* \"#utility.yul\":3652:3665 */\n lt\n /* \"#utility.yul\":3644:3726 */\n iszero\n tag_87\n jumpi\n /* \"#utility.yul\":3707:3724 */\n dup3\n dup2\n sstore\n /* \"#utility.yul\":3688:3689 */\n 0x01\n /* \"#utility.yul\":3677:3690 */\n add\n /* \"#utility.yul\":3644:3726 */\n jump(tag_85)\n tag_87:\n /* \"#utility.yul\":3648:3651 */\n pop\n pop\n pop\n /* \"#utility.yul\":3288:3736 */\n tag_83:\n /* \"#utility.yul\":3197:3742 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3918:5270 */\n tag_35:\n /* \"#utility.yul\":4044:4047 */\n dup2\n /* \"#utility.yul\":4038:4048 */\n mload\n /* \"#utility.yul\":4071:4089 */\n 0xffffffffffffffff\n /* \"#utility.yul\":4063:4069 */\n dup2\n /* \"#utility.yul\":4060:4090 */\n gt\n /* \"#utility.yul\":4057:4113 */\n iszero\n tag_91\n jumpi\n /* \"#utility.yul\":4093:4111 */\n tag_91\n tag_46\n jump\t// in\n tag_91:\n /* \"#utility.yul\":4122:4219 */\n tag_92\n /* \"#utility.yul\":4212:4218 */\n dup2\n /* \"#utility.yul\":4172:4210 */\n tag_93\n /* \"#utility.yul\":4204:4208 */\n dup5\n /* \"#utility.yul\":4198:4209 */\n sload\n /* \"#utility.yul\":4172:4210 */\n tag_41\n jump\t// in\n tag_93:\n /* \"#utility.yul\":4166:4170 */\n dup5\n /* \"#utility.yul\":4122:4219 */\n tag_50\n jump\t// in\n tag_92:\n /* \"#utility.yul\":4274:4278 */\n 0x20\n dup1\n /* \"#utility.yul\":4338:4340 */\n 0x1f\n /* \"#utility.yul\":4327:4341 */\n dup4\n gt\n /* \"#utility.yul\":4355:4356 */\n 0x01\n /* \"#utility.yul\":4350:5013 */\n dup2\n eq\n tag_95\n jumpi\n /* \"#utility.yul\":5057:5058 */\n 0x00\n /* \"#utility.yul\":5074:5080 */\n dup5\n /* \"#utility.yul\":5071:5160 */\n iszero\n tag_96\n jumpi\n pop\n /* \"#utility.yul\":5126:5145 */\n dup6\n dup4\n add\n /* \"#utility.yul\":5120:5146 */\n mload\n /* \"#utility.yul\":5071:5160 */\n tag_96:\n not(0x00)\n /* \"#utility.yul\":3875:3876 */\n 0x03\n /* \"#utility.yul\":3871:3882 */\n dup7\n swap1\n shl\n /* \"#utility.yul\":3867:3891 */\n shr\n /* \"#utility.yul\":3863:3892 */\n not\n /* \"#utility.yul\":3853:3893 */\n and\n /* \"#utility.yul\":3899:3900 */\n 0x01\n /* \"#utility.yul\":3895:3906 */\n dup6\n swap1\n shl\n /* \"#utility.yul\":3850:3907 */\n or\n /* \"#utility.yul\":5173:5254 */\n dup6\n sstore\n /* \"#utility.yul\":4320:5264 */\n jump(tag_87)\n /* \"#utility.yul\":4350:5013 */\n tag_95:\n /* \"#utility.yul\":3144:3145 */\n 0x00\n /* \"#utility.yul\":3137:3151 */\n dup6\n dup2\n mstore\n /* \"#utility.yul\":3181:3185 */\n 0x20\n /* \"#utility.yul\":3168:3186 */\n dup2\n keccak256\n not(0x1f)\n /* \"#utility.yul\":4386:4406 */\n dup7\n and\n swap2\n /* \"#utility.yul\":4504:4740 */\n tag_99:\n /* \"#utility.yul\":4518:4525 */\n dup3\n /* \"#utility.yul\":4515:4516 */\n dup2\n /* \"#utility.yul\":4512:4526 */\n lt\n /* \"#utility.yul\":4504:4740 */\n iszero\n tag_101\n jumpi\n /* \"#utility.yul\":4607:4626 */\n dup9\n dup7\n add\n /* \"#utility.yul\":4601:4627 */\n mload\n /* \"#utility.yul\":4586:4628 */\n dup3\n sstore\n /* \"#utility.yul\":4699:4726 */\n swap5\n dup5\n add\n swap5\n /* \"#utility.yul\":4667:4668 */\n 0x01\n /* \"#utility.yul\":4655:4669 */\n swap1\n swap2\n add\n swap1\n /* \"#utility.yul\":4534:4553 */\n dup5\n add\n /* \"#utility.yul\":4504:4740 */\n jump(tag_99)\n tag_101:\n /* \"#utility.yul\":4508:4511 */\n pop\n /* \"#utility.yul\":4768:4774 */\n dup6\n /* \"#utility.yul\":4759:4766 */\n dup3\n /* \"#utility.yul\":4756:4775 */\n lt\n /* \"#utility.yul\":4753:4954 */\n iszero\n tag_102\n jumpi\n /* \"#utility.yul\":4829:4848 */\n dup8\n dup6\n add\n /* \"#utility.yul\":4823:4849 */\n mload\n not(0x00)\n /* \"#utility.yul\":4912:4913 */\n 0x03\n /* \"#utility.yul\":4908:4922 */\n dup9\n swap1\n shl\n /* \"#utility.yul\":4924:4927 */\n 0xf8\n /* \"#utility.yul\":4904:4928 */\n and\n /* \"#utility.yul\":4900:4937 */\n shr\n /* \"#utility.yul\":4896:4938 */\n not\n /* \"#utility.yul\":4881:4939 */\n and\n /* \"#utility.yul\":4866:4940 */\n dup2\n sstore\n /* \"#utility.yul\":4753:4954 */\n tag_102:\n pop\n pop\n pop\n pop\n pop\n /* \"#utility.yul\":5000:5001 */\n 0x01\n /* \"#utility.yul\":4984:4998 */\n swap1\n dup2\n shl\n /* \"#utility.yul\":4980:5002 */\n add\n /* \"#utility.yul\":4967:5003 */\n swap1\n sstore\n pop\n /* \"#utility.yul\":3918:5270 */\n jump\t// out\n /* \"#utility.yul\":5275:5564 */\n tag_37:\n /* \"#utility.yul\":5406:5409 */\n 0x00\n /* \"#utility.yul\":5444:5450 */\n dup3\n /* \"#utility.yul\":5438:5451 */\n mload\n /* \"#utility.yul\":5460:5526 */\n tag_104\n /* \"#utility.yul\":5519:5525 */\n dup2\n /* \"#utility.yul\":5514:5517 */\n dup5\n /* \"#utility.yul\":5507:5511 */\n 0x20\n /* \"#utility.yul\":5499:5505 */\n dup8\n /* \"#utility.yul\":5495:5512 */\n add\n /* \"#utility.yul\":5460:5526 */\n tag_48\n jump\t// in\n tag_104:\n /* \"#utility.yul\":5542:5558 */\n swap2\n swap1\n swap2\n add\n swap3\n /* \"#utility.yul\":5275:5564 */\n swap2\n pop\n pop\n jump\t// out\n\n auxdata: 0xa2646970667358221220e165745f2380f5d82cd26db642287ff31544d61b26d4ccb6eeaba881d8ae431b64736f6c63430008120033\n}\n",
"bytecode": {
"functionDebugData": {},
"generatedSources": [],
"linkReferences": {},
"object": "608060405234801561001057600080fd5b5061057f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80632e64cec11461005c5780636057361d146100735780636f760f41146100885780638bab8dd51461009b5780639e7a13ad146100c6575b600080fd5b6000545b6040519081526020015b60405180910390f35b610086610081366004610248565b600055565b005b610086610096366004610304565b6100e7565b6100606100a9366004610349565b805160208183018101805160028252928201919093012091525481565b6100d96100d4366004610248565b610190565b60405161006a9291906103aa565b6040805180820190915281815260208101838152600180548082018255600091909152825160029091027fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf68101918255915190917fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf70190610168908261046d565b5050508060028360405161017c919061052d565b908152604051908190036020019020555050565b600181815481106101a057600080fd5b600091825260209091206002909102018054600182018054919350906101c5906103e4565b80601f01602080910402602001604051908101604052809291908181526020018280546101f1906103e4565b801561023e5780601f106102135761010080835404028352916020019161023e565b820191906000526020600020905b81548152906001019060200180831161022157829003601f168201915b5050505050905082565b60006020828403121561025a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261028857600080fd5b813567ffffffffffffffff808211156102a3576102a3610261565b604051601f8301601f19908116603f011681019082821181831017156102cb576102cb610261565b816040528381528660208588010111156102e457600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561031757600080fd5b823567ffffffffffffffff81111561032e57600080fd5b61033a85828601610277565b95602094909401359450505050565b60006020828403121561035b57600080fd5b813567ffffffffffffffff81111561037257600080fd5b61037e84828501610277565b949350505050565b60005b838110156103a1578181015183820152602001610389565b50506000910152565b82815260406020820152600082518060408401526103cf816060850160208701610386565b601f01601f1916919091016060019392505050565b600181811c908216806103f857607f821691505b60208210810361041857634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561046857600081815260208120601f850160051c810160208610156104455750805b601f850160051c820191505b8181101561046457828155600101610451565b5050505b505050565b815167ffffffffffffffff81111561048757610487610261565b61049b8161049584546103e4565b8461041e565b602080601f8311600181146104d057600084156104b85750858301515b600019600386901b1c1916600185901b178555610464565b600085815260208120601f198616915b828110156104ff578886015182559484019460019091019084016104e0565b508582101561051d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000825161053f818460208701610386565b919091019291505056fea2646970667358221220e165745f2380f5d82cd26db642287ff31544d61b26d4ccb6eeaba881d8ae431b64736f6c63430008120033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x57F DUP1 PUSH2 0x20 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 0x57 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x2E64CEC1 EQ PUSH2 0x5C JUMPI DUP1 PUSH4 0x6057361D EQ PUSH2 0x73 JUMPI DUP1 PUSH4 0x6F760F41 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0x8BAB8DD5 EQ PUSH2 0x9B JUMPI DUP1 PUSH4 0x9E7A13AD EQ PUSH2 0xC6 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x86 PUSH2 0x81 CALLDATASIZE PUSH1 0x4 PUSH2 0x248 JUMP JUMPDEST PUSH1 0x0 SSTORE JUMP JUMPDEST STOP JUMPDEST PUSH2 0x86 PUSH2 0x96 CALLDATASIZE PUSH1 0x4 PUSH2 0x304 JUMP JUMPDEST PUSH2 0xE7 JUMP JUMPDEST PUSH2 0x60 PUSH2 0xA9 CALLDATASIZE PUSH1 0x4 PUSH2 0x349 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 DUP2 DUP4 ADD DUP2 ADD DUP1 MLOAD PUSH1 0x2 DUP3 MSTORE SWAP3 DUP3 ADD SWAP2 SWAP1 SWAP4 ADD KECCAK256 SWAP2 MSTORE SLOAD DUP2 JUMP JUMPDEST PUSH2 0xD9 PUSH2 0xD4 CALLDATASIZE PUSH1 0x4 PUSH2 0x248 JUMP JUMPDEST PUSH2 0x190 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6A SWAP3 SWAP2 SWAP1 PUSH2 0x3AA JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP4 DUP2 MSTORE PUSH1 0x1 DUP1 SLOAD DUP1 DUP3 ADD DUP3 SSTORE PUSH1 0x0 SWAP2 SWAP1 SWAP2 MSTORE DUP3 MLOAD PUSH1 0x2 SWAP1 SWAP2 MUL PUSH32 0xB10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF6 DUP2 ADD SWAP2 DUP3 SSTORE SWAP2 MLOAD SWAP1 SWAP2 PUSH32 0xB10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF7 ADD SWAP1 PUSH2 0x168 SWAP1 DUP3 PUSH2 0x46D JUMP JUMPDEST POP POP POP DUP1 PUSH1 0x2 DUP4 PUSH1 0x40 MLOAD PUSH2 0x17C SWAP2 SWAP1 PUSH2 0x52D JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 KECCAK256 SSTORE POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x1A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP1 SWAP2 KECCAK256 PUSH1 0x2 SWAP1 SWAP2 MUL ADD DUP1 SLOAD PUSH1 0x1 DUP3 ADD DUP1 SLOAD SWAP2 SWAP4 POP SWAP1 PUSH2 0x1C5 SWAP1 PUSH2 0x3E4 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 0x1F1 SWAP1 PUSH2 0x3E4 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x23E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x213 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x23E 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 0x221 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x25A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x288 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x2A3 JUMPI PUSH2 0x2A3 PUSH2 0x261 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x2CB JUMPI PUSH2 0x2CB PUSH2 0x261 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x2E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x317 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x32E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x33A DUP6 DUP3 DUP7 ADD PUSH2 0x277 JUMP JUMPDEST SWAP6 PUSH1 0x20 SWAP5 SWAP1 SWAP5 ADD CALLDATALOAD SWAP5 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x35B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x372 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x37E DUP5 DUP3 DUP6 ADD PUSH2 0x277 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3A1 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x389 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST DUP3 DUP2 MSTORE PUSH1 0x40 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 DUP3 MLOAD DUP1 PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x3CF DUP2 PUSH1 0x60 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x386 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP2 SWAP1 SWAP2 ADD PUSH1 0x60 ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x3F8 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x418 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x468 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x445 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x464 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x451 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x487 JUMPI PUSH2 0x487 PUSH2 0x261 JUMP JUMPDEST PUSH2 0x49B DUP2 PUSH2 0x495 DUP5 SLOAD PUSH2 0x3E4 JUMP JUMPDEST DUP5 PUSH2 0x41E JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x4D0 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x4B8 JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x464 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x4FF JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x4E0 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x51D JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0x53F DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0x386 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xE1 PUSH6 0x745F2380F5D8 0x2C 0xD2 PUSH14 0xB642287FF31544D61B26D4CCB6EE 0xAB 0xA8 DUP2 0xD8 0xAE NUMBER SHL PUSH5 0x736F6C6343 STOP ADDMOD SLT STOP CALLER ",
"sourceMap": "56:740:0:-:0;;;;;;;;;;;;;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@addPerson_57": {
"entryPoint": 231,
"id": 57,
"parameterSlots": 2,
"returnSlots": 0
},
"@nameToFavoriteNumber_16": {
"entryPoint": null,
"id": 16,
"parameterSlots": 0,
"returnSlots": 0
},
"@people_12": {
"entryPoint": 400,
"id": 12,
"parameterSlots": 0,
"returnSlots": 0
},
"@retrieve_34": {
"entryPoint": null,
"id": 34,
"parameterSlots": 0,
"returnSlots": 1
},
"@store_26": {
"entryPoint": null,
"id": 26,
"parameterSlots": 1,
"returnSlots": 0
},
"abi_decode_string": {
"entryPoint": 631,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_string_memory_ptr": {
"entryPoint": 841,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_string_memory_ptrt_uint256": {
"entryPoint": 772,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_decode_tuple_t_uint256": {
"entryPoint": 584,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed": {
"entryPoint": 1325,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": null,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_uint256_t_string_memory_ptr__to_t_uint256_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 938,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"array_dataslot_string_storage": {
"entryPoint": null,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"clean_up_bytearray_end_slots_string_storage": {
"entryPoint": 1054,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": {
"entryPoint": 1133,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"copy_memory_to_memory_with_cleanup": {
"entryPoint": 902,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"extract_byte_array_length": {
"entryPoint": 996,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"extract_used_part_and_set_length_of_short_byte_array": {
"entryPoint": null,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"panic_error_0x41": {
"entryPoint": 609,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:5566:2",
"statements": [
{
"nodeType": "YulBlock",
"src": "6:3:2",
"statements": []
},
{
"body": {
"nodeType": "YulBlock",
"src": "115:76:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "125:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "137:9:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "148:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "133:3:2"
},
"nodeType": "YulFunctionCall",
"src": "133:18:2"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "125:4:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "167:9:2"
},
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "178:6:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "160:6:2"
},
"nodeType": "YulFunctionCall",
"src": "160:25:2"
},
"nodeType": "YulExpressionStatement",
"src": "160:25:2"
}
]
},
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "84:9:2",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "95:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "106:4:2",
"type": ""
}
],
"src": "14:177:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "266:110:2",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "312:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "321:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "324:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "314:6:2"
},
"nodeType": "YulFunctionCall",
"src": "314:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "314:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "287:7:2"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "296:9:2"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "283:3:2"
},
"nodeType": "YulFunctionCall",
"src": "283:23:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "308:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "279:3:2"
},
"nodeType": "YulFunctionCall",
"src": "279:32:2"
},
"nodeType": "YulIf",
"src": "276:52:2"
},
{
"nodeType": "YulAssignment",
"src": "337:33:2",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "360:9:2"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "347:12:2"
},
"nodeType": "YulFunctionCall",
"src": "347:23:2"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "337:6:2"
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "232:9:2",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "243:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "255:6:2",
"type": ""
}
],
"src": "196:180:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "413:95:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "430:1:2",
"type": "",
"value": "0"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "437:3:2",
"type": "",
"value": "224"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "442:10:2",
"type": "",
"value": "0x4e487b71"
}
],
"functionName": {
"name": "shl",
"nodeType": "YulIdentifier",
"src": "433:3:2"
},
"nodeType": "YulFunctionCall",
"src": "433:20:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "423:6:2"
},
"nodeType": "YulFunctionCall",
"src": "423:31:2"
},
"nodeType": "YulExpressionStatement",
"src": "423:31:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "470:1:2",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "473:4:2",
"type": "",
"value": "0x41"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "463:6:2"
},
"nodeType": "YulFunctionCall",
"src": "463:15:2"
},
"nodeType": "YulExpressionStatement",
"src": "463:15:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "494:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "497:4:2",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "487:6:2"
},
"nodeType": "YulFunctionCall",
"src": "487:15:2"
},
"nodeType": "YulExpressionStatement",
"src": "487:15:2"
}
]
},
"name": "panic_error_0x41",
"nodeType": "YulFunctionDefinition",
"src": "381:127:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "566:666:2",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "615:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "624:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "627:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "617:6:2"
},
"nodeType": "YulFunctionCall",
"src": "617:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "617:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "594:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "602:4:2",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "590:3:2"
},
"nodeType": "YulFunctionCall",
"src": "590:17:2"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "609:3:2"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "586:3:2"
},
"nodeType": "YulFunctionCall",
"src": "586:27:2"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "579:6:2"
},
"nodeType": "YulFunctionCall",
"src": "579:35:2"
},
"nodeType": "YulIf",
"src": "576:55:2"
},
{
"nodeType": "YulVariableDeclaration",
"src": "640:30:2",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "663:6:2"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "650:12:2"
},
"nodeType": "YulFunctionCall",
"src": "650:20:2"
},
"variables": [
{
"name": "_1",
"nodeType": "YulTypedName",
"src": "644:2:2",
"type": ""
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "679:28:2",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "689:18:2",
"type": "",
"value": "0xffffffffffffffff"
},
"variables": [
{
"name": "_2",
"nodeType": "YulTypedName",
"src": "683:2:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "730:22:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "732:16:2"
},
"nodeType": "YulFunctionCall",
"src": "732:18:2"
},
"nodeType": "YulExpressionStatement",
"src": "732:18:2"
}
]
},
"condition": {
"arguments": [
{
"name": "_1",
"nodeType": "YulIdentifier",
"src": "722:2:2"
},
{
"name": "_2",
"nodeType": "YulIdentifier",
"src": "726:2:2"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "719:2:2"
},
"nodeType": "YulFunctionCall",
"src": "719:10:2"
},
"nodeType": "YulIf",
"src": "716:36:2"
},
{
"nodeType": "YulVariableDeclaration",
"src": "761:17:2",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "775:2:2",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "771:3:2"
},
"nodeType": "YulFunctionCall",
"src": "771:7:2"
},
"variables": [
{
"name": "_3",
"nodeType": "YulTypedName",
"src": "765:2:2",
"type": ""
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "787:23:2",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "807:2:2",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "801:5:2"
},
"nodeType": "YulFunctionCall",
"src": "801:9:2"
},
"variables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "791:6:2",
"type": ""
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "819:71:2",
"value": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "841:6:2"
},
{
"arguments": [
{
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "_1",
"nodeType": "YulIdentifier",
"src": "865:2:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "869:4:2",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "861:3:2"
},
"nodeType": "YulFunctionCall",
"src": "861:13:2"
},
{
"name": "_3",
"nodeType": "YulIdentifier",
"src": "876:2:2"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "857:3:2"
},
"nodeType": "YulFunctionCall",
"src": "857:22:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "881:2:2",
"type": "",
"value": "63"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "853:3:2"
},
"nodeType": "YulFunctionCall",
"src": "853:31:2"
},
{
"name": "_3",
"nodeType": "YulIdentifier",
"src": "886:2:2"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "849:3:2"
},
"nodeType": "YulFunctionCall",
"src": "849:40:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "837:3:2"
},
"nodeType": "YulFunctionCall",
"src": "837:53:2"
},
"variables": [
{
"name": "newFreePtr",
"nodeType": "YulTypedName",
"src": "823:10:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "949:22:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "951:16:2"
},
"nodeType": "YulFunctionCall",
"src": "951:18:2"
},
"nodeType": "YulExpressionStatement",
"src": "951:18:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "908:10:2"
},
{
"name": "_2",
"nodeType": "YulIdentifier",
"src": "920:2:2"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "905:2:2"
},
"nodeType": "YulFunctionCall",
"src": "905:18:2"
},
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "928:10:2"
},
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "940:6:2"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "925:2:2"
},
"nodeType": "YulFunctionCall",
"src": "925:22:2"
}
],
"functionName": {
"name": "or",
"nodeType": "YulIdentifier",
"src": "902:2:2"
},
"nodeType": "YulFunctionCall",
"src": "902:46:2"
},
"nodeType": "YulIf",
"src": "899:72:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "987:2:2",
"type": "",
"value": "64"
},
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "991:10:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "980:6:2"
},
"nodeType": "YulFunctionCall",
"src": "980:22:2"
},
"nodeType": "YulExpressionStatement",
"src": "980:22:2"
},
{
"expression": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "1018:6:2"
},
{
"name": "_1",
"nodeType": "YulIdentifier",
"src": "1026:2:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1011:6:2"
},
"nodeType": "YulFunctionCall",
"src": "1011:18:2"
},
"nodeType": "YulExpressionStatement",
"src": "1011:18:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1077:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1086:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1089:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1079:6:2"
},
"nodeType": "YulFunctionCall",
"src": "1079:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "1079:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1052:6:2"
},
{
"name": "_1",
"nodeType": "YulIdentifier",
"src": "1060:2:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1048:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1048:15:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1065:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1044:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1044:26:2"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "1072:3:2"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "1041:2:2"
},
"nodeType": "YulFunctionCall",
"src": "1041:35:2"
},
"nodeType": "YulIf",
"src": "1038:55:2"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "1119:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1127:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1115:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1115:17:2"
},
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1138:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1146:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1134:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1134:17:2"
},
{
"name": "_1",
"nodeType": "YulIdentifier",
"src": "1153:2:2"
}
],
"functionName": {
"name": "calldatacopy",
"nodeType": "YulIdentifier",
"src": "1102:12:2"
},
"nodeType": "YulFunctionCall",
"src": "1102:54:2"
},
"nodeType": "YulExpressionStatement",
"src": "1102:54:2"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "1180:6:2"
},
{
"name": "_1",
"nodeType": "YulIdentifier",
"src": "1188:2:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1176:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1176:15:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1193:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1172:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1172:26:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1200:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1165:6:2"
},
"nodeType": "YulFunctionCall",
"src": "1165:37:2"
},
"nodeType": "YulExpressionStatement",
"src": "1165:37:2"
},
{
"nodeType": "YulAssignment",
"src": "1211:15:2",
"value": {
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "1220:6:2"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "1211:5:2"
}
]
}
]
},
"name": "abi_decode_string",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "540:6:2",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "548:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "556:5:2",
"type": ""
}
],
"src": "513:719:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1334:293:2",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1380:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1389:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1392:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1382:6:2"
},
"nodeType": "YulFunctionCall",
"src": "1382:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "1382:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1355:7:2"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1364:9:2"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1351:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1351:23:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1376:2:2",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "1347:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1347:32:2"
},
"nodeType": "YulIf",
"src": "1344:52:2"
},
{
"nodeType": "YulVariableDeclaration",
"src": "1405:37:2",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1432:9:2"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "1419:12:2"
},
"nodeType": "YulFunctionCall",
"src": "1419:23:2"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1409:6:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "1485:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1494:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1497:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1487:6:2"
},
"nodeType": "YulFunctionCall",
"src": "1487:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "1487:12:2"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1457:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1465:18:2",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "1454:2:2"
},
"nodeType": "YulFunctionCall",
"src": "1454:30:2"
},
"nodeType": "YulIf",
"src": "1451:50:2"
},
{
"nodeType": "YulAssignment",
"src": "1510:60:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1542:9:2"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1553:6:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1538:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1538:22:2"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1562:7:2"
}
],
"functionName": {
"name": "abi_decode_string",
"nodeType": "YulIdentifier",
"src": "1520:17:2"
},
"nodeType": "YulFunctionCall",
"src": "1520:50:2"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1510:6:2"
}
]
},
{
"nodeType": "YulAssignment",
"src": "1579:42:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1606:9:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1617:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1602:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1602:18:2"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "1589:12:2"
},
"nodeType": "YulFunctionCall",
"src": "1589:32:2"
},
"variableNames": [
{
"name": "value1",
"nodeType": "YulIdentifier",
"src": "1579:6:2"
}
]
}
]
},
"name": "abi_decode_tuple_t_string_memory_ptrt_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1292:9:2",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "1303:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1315:6:2",
"type": ""
},
{
"name": "value1",
"nodeType": "YulTypedName",
"src": "1323:6:2",
"type": ""
}
],
"src": "1237:390:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1712:242:2",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1758:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1767:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1770:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1760:6:2"
},
"nodeType": "YulFunctionCall",
"src": "1760:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "1760:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1733:7:2"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1742:9:2"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1729:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1729:23:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1754:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "1725:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1725:32:2"
},
"nodeType": "YulIf",
"src": "1722:52:2"
},
{
"nodeType": "YulVariableDeclaration",
"src": "1783:37:2",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1810:9:2"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "1797:12:2"
},
"nodeType": "YulFunctionCall",
"src": "1797:23:2"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1787:6:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "1863:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1872:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1875:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1865:6:2"
},
"nodeType": "YulFunctionCall",
"src": "1865:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "1865:12:2"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1835:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1843:18:2",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "1832:2:2"
},
"nodeType": "YulFunctionCall",
"src": "1832:30:2"
},
"nodeType": "YulIf",
"src": "1829:50:2"
},
{
"nodeType": "YulAssignment",
"src": "1888:60:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1920:9:2"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1931:6:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1916:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1916:22:2"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1940:7:2"
}
],
"functionName": {
"name": "abi_decode_string",
"nodeType": "YulIdentifier",
"src": "1898:17:2"
},
"nodeType": "YulFunctionCall",
"src": "1898:50:2"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1888:6:2"
}
]
}
]
},
"name": "abi_decode_tuple_t_string_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1678:9:2",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "1689:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1701:6:2",
"type": ""
}
],
"src": "1632:322:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2025:184:2",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "2035:10:2",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "2044:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "i",
"nodeType": "YulTypedName",
"src": "2039:1:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "2104:63:2",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "2129:3:2"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2134:1:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2125:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2125:11:2"
},
{
"arguments": [
{
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "2148:3:2"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2153:1:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2144:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2144:11:2"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "2138:5:2"
},
"nodeType": "YulFunctionCall",
"src": "2138:18:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2118:6:2"
},
"nodeType": "YulFunctionCall",
"src": "2118:39:2"
},
"nodeType": "YulExpressionStatement",
"src": "2118:39:2"
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2065:1:2"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2068:6:2"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "2062:2:2"
},
"nodeType": "YulFunctionCall",
"src": "2062:13:2"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "2076:19:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2078:15:2",
"value": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2087:1:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2090:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2083:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2083:10:2"
},
"variableNames": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "2078:1:2"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "2058:3:2",
"statements": []
},
"src": "2054:113:2"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "2187:3:2"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2192:6:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2183:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2183:16:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2201:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2176:6:2"
},
"nodeType": "YulFunctionCall",
"src": "2176:27:2"
},
"nodeType": "YulExpressionStatement",
"src": "2176:27:2"
}
]
},
"name": "copy_memory_to_memory_with_cleanup",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "2003:3:2",
"type": ""
},
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "2008:3:2",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2013:6:2",
"type": ""
}
],
"src": "1959:250:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2363:318:2",
"statements": [
{
"expression": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2380:9:2"
},
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "2391:6:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2373:6:2"
},
"nodeType": "YulFunctionCall",
"src": "2373:25:2"
},
"nodeType": "YulExpressionStatement",
"src": "2373:25:2"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2418:9:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2429:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2414:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2414:18:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2434:2:2",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2407:6:2"
},
"nodeType": "YulFunctionCall",
"src": "2407:30:2"
},
"nodeType": "YulExpressionStatement",
"src": "2407:30:2"
},
{
"nodeType": "YulVariableDeclaration",
"src": "2446:27:2",
"value": {
"arguments": [
{
"name": "value1",
"nodeType": "YulIdentifier",
"src": "2466:6:2"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "2460:5:2"
},
"nodeType": "YulFunctionCall",
"src": "2460:13:2"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2450:6:2",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2493:9:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2504:2:2",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2489:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2489:18:2"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2509:6:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2482:6:2"
},
"nodeType": "YulFunctionCall",
"src": "2482:34:2"
},
"nodeType": "YulExpressionStatement",
"src": "2482:34:2"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "value1",
"nodeType": "YulIdentifier",
"src": "2564:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2572:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2560:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2560:15:2"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2581:9:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2592:2:2",
"type": "",
"value": "96"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2577:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2577:18:2"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2597:6:2"
}
],
"functionName": {
"name": "copy_memory_to_memory_with_cleanup",
"nodeType": "YulIdentifier",
"src": "2525:34:2"
},
"nodeType": "YulFunctionCall",
"src": "2525:79:2"
},
"nodeType": "YulExpressionStatement",
"src": "2525:79:2"
},
{
"nodeType": "YulAssignment",
"src": "2613:62:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2629:9:2"
},
{
"arguments": [
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2648:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2656:2:2",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2644:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2644:15:2"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2665:2:2",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "2661:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2661:7:2"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2640:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2640:29:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2625:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2625:45:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2672:2:2",
"type": "",
"value": "96"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2621:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2621:54:2"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2613:4:2"
}
]
}
]
},
"name": "abi_encode_tuple_t_uint256_t_string_memory_ptr__to_t_uint256_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "2324:9:2",
"type": ""
},
{
"name": "value1",
"nodeType": "YulTypedName",
"src": "2335:6:2",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "2343:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "2354:4:2",
"type": ""
}
],
"src": "2214:467:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2741:325:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2751:22:2",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2765:1:2",
"type": "",
"value": "1"
},
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "2768:4:2"
}
],
"functionName": {
"name": "shr",
"nodeType": "YulIdentifier",
"src": "2761:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2761:12:2"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2751:6:2"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "2782:38:2",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "2812:4:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2818:1:2",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2808:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2808:12:2"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulTypedName",
"src": "2786:18:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "2859:31:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2861:27:2",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2875:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2883:4:2",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2871:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2871:17:2"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2861:6:2"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "2839:18:2"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2832:6:2"
},
"nodeType": "YulFunctionCall",
"src": "2832:26:2"
},
"nodeType": "YulIf",
"src": "2829:61:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2949:111:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2970:1:2",
"type": "",
"value": "0"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2977:3:2",
"type": "",
"value": "224"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2982:10:2",
"type": "",
"value": "0x4e487b71"
}
],
"functionName": {
"name": "shl",
"nodeType": "YulIdentifier",
"src": "2973:3:2"
},
"nodeType": "YulFunctionCall",
"src": "2973:20:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2963:6:2"
},
"nodeType": "YulFunctionCall",
"src": "2963:31:2"
},
"nodeType": "YulExpressionStatement",
"src": "2963:31:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3014:1:2",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3017:4:2",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3007:6:2"
},
"nodeType": "YulFunctionCall",
"src": "3007:15:2"
},
"nodeType": "YulExpressionStatement",
"src": "3007:15:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3042:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3045:4:2",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "3035:6:2"
},
"nodeType": "YulFunctionCall",
"src": "3035:15:2"
},
"nodeType": "YulExpressionStatement",
"src": "3035:15:2"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "2905:18:2"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2928:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2936:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "2925:2:2"
},
"nodeType": "YulFunctionCall",
"src": "2925:14:2"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "2902:2:2"
},
"nodeType": "YulFunctionCall",
"src": "2902:38:2"
},
"nodeType": "YulIf",
"src": "2899:161:2"
}
]
},
"name": "extract_byte_array_length",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "2721:4:2",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2730:6:2",
"type": ""
}
],
"src": "2686:380:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3127:65:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3144:1:2",
"type": "",
"value": "0"
},
{
"name": "ptr",
"nodeType": "YulIdentifier",
"src": "3147:3:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3137:6:2"
},
"nodeType": "YulFunctionCall",
"src": "3137:14:2"
},
"nodeType": "YulExpressionStatement",
"src": "3137:14:2"
},
{
"nodeType": "YulAssignment",
"src": "3160:26:2",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3178:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3181:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "keccak256",
"nodeType": "YulIdentifier",
"src": "3168:9:2"
},
"nodeType": "YulFunctionCall",
"src": "3168:18:2"
},
"variableNames": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "3160:4:2"
}
]
}
]
},
"name": "array_dataslot_string_storage",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "ptr",
"nodeType": "YulTypedName",
"src": "3110:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "3118:4:2",
"type": ""
}
],
"src": "3071:121:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3278:464:2",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "3311:425:2",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "3325:11:2",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "3335:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "_1",
"nodeType": "YulTypedName",
"src": "3329:2:2",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "_1",
"nodeType": "YulIdentifier",
"src": "3356:2:2"
},
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "3360:5:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3349:6:2"
},
"nodeType": "YulFunctionCall",
"src": "3349:17:2"
},
"nodeType": "YulExpressionStatement",
"src": "3349:17:2"
},
{
"nodeType": "YulVariableDeclaration",
"src": "3379:31:2",
"value": {
"arguments": [
{
"name": "_1",
"nodeType": "YulIdentifier",
"src": "3401:2:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3405:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "keccak256",
"nodeType": "YulIdentifier",
"src": "3391:9:2"
},
"nodeType": "YulFunctionCall",
"src": "3391:19:2"
},
"variables": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "3383:4:2",
"type": ""
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "3423:57:2",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "3446:4:2"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3456:1:2",
"type": "",
"value": "5"
},
{
"arguments": [
{
"name": "startIndex",
"nodeType": "YulIdentifier",
"src": "3463:10:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3475:2:2",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3459:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3459:19:2"
}
],
"functionName": {
"name": "shr",
"nodeType": "YulIdentifier",
"src": "3452:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3452:27:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3442:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3442:38:2"
},
"variables": [
{
"name": "deleteStart",
"nodeType": "YulTypedName",
"src": "3427:11:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "3517:23:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3519:19:2",
"value": {
"name": "data",
"nodeType": "YulIdentifier",
"src": "3534:4:2"
},
"variableNames": [
{
"name": "deleteStart",
"nodeType": "YulIdentifier",
"src": "3519:11:2"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "startIndex",
"nodeType": "YulIdentifier",
"src": "3499:10:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3511:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "3496:2:2"
},
"nodeType": "YulFunctionCall",
"src": "3496:20:2"
},
"nodeType": "YulIf",
"src": "3493:47:2"
},
{
"nodeType": "YulVariableDeclaration",
"src": "3553:41:2",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "3567:4:2"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3577:1:2",
"type": "",
"value": "5"
},
{
"arguments": [
{
"name": "len",
"nodeType": "YulIdentifier",
"src": "3584:3:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3589:2:2",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3580:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3580:12:2"
}
],
"functionName": {
"name": "shr",
"nodeType": "YulIdentifier",
"src": "3573:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3573:20:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3563:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3563:31:2"
},
"variables": [
{
"name": "_2",
"nodeType": "YulTypedName",
"src": "3557:2:2",
"type": ""
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "3607:24:2",
"value": {
"name": "deleteStart",
"nodeType": "YulIdentifier",
"src": "3620:11:2"
},
"variables": [
{
"name": "start",
"nodeType": "YulTypedName",
"src": "3611:5:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "3705:21:2",
"statements": [
{
"expression": {
"arguments": [
{
"name": "start",
"nodeType": "YulIdentifier",
"src": "3714:5:2"
},
{
"name": "_1",
"nodeType": "YulIdentifier",
"src": "3721:2:2"
}
],
"functionName": {
"name": "sstore",
"nodeType": "YulIdentifier",
"src": "3707:6:2"
},
"nodeType": "YulFunctionCall",
"src": "3707:17:2"
},
"nodeType": "YulExpressionStatement",
"src": "3707:17:2"
}
]
},
"condition": {
"arguments": [
{
"name": "start",
"nodeType": "YulIdentifier",
"src": "3655:5:2"
},
{
"name": "_2",
"nodeType": "YulIdentifier",
"src": "3662:2:2"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "3652:2:2"
},
"nodeType": "YulFunctionCall",
"src": "3652:13:2"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "3666:26:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3668:22:2",
"value": {
"arguments": [
{
"name": "start",
"nodeType": "YulIdentifier",
"src": "3681:5:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3688:1:2",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3677:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3677:13:2"
},
"variableNames": [
{
"name": "start",
"nodeType": "YulIdentifier",
"src": "3668:5:2"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "3648:3:2",
"statements": []
},
"src": "3644:82:2"
}
]
},
"condition": {
"arguments": [
{
"name": "len",
"nodeType": "YulIdentifier",
"src": "3294:3:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3299:2:2",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "3291:2:2"
},
"nodeType": "YulFunctionCall",
"src": "3291:11:2"
},
"nodeType": "YulIf",
"src": "3288:448:2"
}
]
},
"name": "clean_up_bytearray_end_slots_string_storage",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "3250:5:2",
"type": ""
},
{
"name": "len",
"nodeType": "YulTypedName",
"src": "3257:3:2",
"type": ""
},
{
"name": "startIndex",
"nodeType": "YulTypedName",
"src": "3262:10:2",
"type": ""
}
],
"src": "3197:545:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3832:81:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3842:65:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "3857:4:2"
},
{
"arguments": [
{
"arguments": [
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3875:1:2",
"type": "",
"value": "3"
},
{
"name": "len",
"nodeType": "YulIdentifier",
"src": "3878:3:2"
}
],
"functionName": {
"name": "shl",
"nodeType": "YulIdentifier",
"src": "3871:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3871:11:2"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3888:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "3884:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3884:6:2"
}
],
"functionName": {
"name": "shr",
"nodeType": "YulIdentifier",
"src": "3867:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3867:24:2"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "3863:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3863:29:2"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "3853:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3853:40:2"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3899:1:2",
"type": "",
"value": "1"
},
{
"name": "len",
"nodeType": "YulIdentifier",
"src": "3902:3:2"
}
],
"functionName": {
"name": "shl",
"nodeType": "YulIdentifier",
"src": "3895:3:2"
},
"nodeType": "YulFunctionCall",
"src": "3895:11:2"
}
],
"functionName": {
"name": "or",
"nodeType": "YulIdentifier",
"src": "3850:2:2"
},
"nodeType": "YulFunctionCall",
"src": "3850:57:2"
},
"variableNames": [
{
"name": "used",
"nodeType": "YulIdentifier",
"src": "3842:4:2"
}
]
}
]
},
"name": "extract_used_part_and_set_length_of_short_byte_array",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "3809:4:2",
"type": ""
},
{
"name": "len",
"nodeType": "YulTypedName",
"src": "3815:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "used",
"nodeType": "YulTypedName",
"src": "3823:4:2",
"type": ""
}
],
"src": "3747:166:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4014:1256:2",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "4024:24:2",
"value": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "4044:3:2"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "4038:5:2"
},
"nodeType": "YulFunctionCall",
"src": "4038:10:2"
},
"variables": [
{
"name": "newLen",
"nodeType": "YulTypedName",
"src": "4028:6:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "4091:22:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "4093:16:2"
},
"nodeType": "YulFunctionCall",
"src": "4093:18:2"
},
"nodeType": "YulExpressionStatement",
"src": "4093:18:2"
}
]
},
"condition": {
"arguments": [
{
"name": "newLen",
"nodeType": "YulIdentifier",
"src": "4063:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4071:18:2",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "4060:2:2"
},
"nodeType": "YulFunctionCall",
"src": "4060:30:2"
},
"nodeType": "YulIf",
"src": "4057:56:2"
},
{
"expression": {
"arguments": [
{
"name": "slot",
"nodeType": "YulIdentifier",
"src": "4166:4:2"
},
{
"arguments": [
{
"arguments": [
{
"name": "slot",
"nodeType": "YulIdentifier",
"src": "4204:4:2"
}
],
"functionName": {
"name": "sload",
"nodeType": "YulIdentifier",
"src": "4198:5:2"
},
"nodeType": "YulFunctionCall",
"src": "4198:11:2"
}
],
"functionName": {
"name": "extract_byte_array_length",
"nodeType": "YulIdentifier",
"src": "4172:25:2"
},
"nodeType": "YulFunctionCall",
"src": "4172:38:2"
},
{
"name": "newLen",
"nodeType": "YulIdentifier",
"src": "4212:6:2"
}
],
"functionName": {
"name": "clean_up_bytearray_end_slots_string_storage",
"nodeType": "YulIdentifier",
"src": "4122:43:2"
},
"nodeType": "YulFunctionCall",
"src": "4122:97:2"
},
"nodeType": "YulExpressionStatement",
"src": "4122:97:2"
},
{
"nodeType": "YulVariableDeclaration",
"src": "4228:18:2",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "4245:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "srcOffset",
"nodeType": "YulTypedName",
"src": "4232:9:2",
"type": ""
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "4255:23:2",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "4274:4:2",
"type": "",
"value": "0x20"
},
"variables": [
{
"name": "srcOffset_1",
"nodeType": "YulTypedName",
"src": "4259:11:2",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "4287:24:2",
"value": {
"name": "srcOffset_1",
"nodeType": "YulIdentifier",
"src": "4300:11:2"
},
"variableNames": [
{
"name": "srcOffset",
"nodeType": "YulIdentifier",
"src": "4287:9:2"
}
]
},
{
"cases": [
{
"body": {
"nodeType": "YulBlock",
"src": "4357:656:2",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "4371:35:2",
"value": {
"arguments": [
{
"name": "newLen",
"nodeType": "YulIdentifier",
"src": "4390:6:2"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4402:2:2",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "4398:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4398:7:2"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "4386:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4386:20:2"
},
"variables": [
{
"name": "loopEnd",
"nodeType": "YulTypedName",
"src": "4375:7:2",
"type": ""
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "4419:49:2",
"value": {
"arguments": [
{
"name": "slot",
"nodeType": "YulIdentifier",
"src": "4463:4:2"
}
],
"functionName": {
"name": "array_dataslot_string_storage",
"nodeType": "YulIdentifier",
"src": "4433:29:2"
},
"nodeType": "YulFunctionCall",
"src": "4433:35:2"
},
"variables": [
{
"name": "dstPtr",
"nodeType": "YulTypedName",
"src": "4423:6:2",
"type": ""
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "4481:10:2",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "4490:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "i",
"nodeType": "YulTypedName",
"src": "4485:1:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "4568:172:2",
"statements": [
{
"expression": {
"arguments": [
{
"name": "dstPtr",
"nodeType": "YulIdentifier",
"src": "4593:6:2"
},
{
"arguments": [
{
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "4611:3:2"
},
{
"name": "srcOffset",
"nodeType": "YulIdentifier",
"src": "4616:9:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4607:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4607:19:2"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "4601:5:2"
},
"nodeType": "YulFunctionCall",
"src": "4601:26:2"
}
],
"functionName": {
"name": "sstore",
"nodeType": "YulIdentifier",
"src": "4586:6:2"
},
"nodeType": "YulFunctionCall",
"src": "4586:42:2"
},
"nodeType": "YulExpressionStatement",
"src": "4586:42:2"
},
{
"nodeType": "YulAssignment",
"src": "4645:24:2",
"value": {
"arguments": [
{
"name": "dstPtr",
"nodeType": "YulIdentifier",
"src": "4659:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4667:1:2",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4655:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4655:14:2"
},
"variableNames": [
{
"name": "dstPtr",
"nodeType": "YulIdentifier",
"src": "4645:6:2"
}
]
},
{
"nodeType": "YulAssignment",
"src": "4686:40:2",
"value": {
"arguments": [
{
"name": "srcOffset",
"nodeType": "YulIdentifier",
"src": "4703:9:2"
},
{
"name": "srcOffset_1",
"nodeType": "YulIdentifier",
"src": "4714:11:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4699:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4699:27:2"
},
"variableNames": [
{
"name": "srcOffset",
"nodeType": "YulIdentifier",
"src": "4686:9:2"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "4515:1:2"
},
{
"name": "loopEnd",
"nodeType": "YulIdentifier",
"src": "4518:7:2"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "4512:2:2"
},
"nodeType": "YulFunctionCall",
"src": "4512:14:2"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "4527:28:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "4529:24:2",
"value": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "4538:1:2"
},
{
"name": "srcOffset_1",
"nodeType": "YulIdentifier",
"src": "4541:11:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4534:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4534:19:2"
},
"variableNames": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "4529:1:2"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "4508:3:2",
"statements": []
},
"src": "4504:236:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4788:166:2",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "4806:43:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "4833:3:2"
},
{
"name": "srcOffset",
"nodeType": "YulIdentifier",
"src": "4838:9:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4829:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4829:19:2"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "4823:5:2"
},
"nodeType": "YulFunctionCall",
"src": "4823:26:2"
},
"variables": [
{
"name": "lastValue",
"nodeType": "YulTypedName",
"src": "4810:9:2",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "dstPtr",
"nodeType": "YulIdentifier",
"src": "4873:6:2"
},
{
"arguments": [
{
"name": "lastValue",
"nodeType": "YulIdentifier",
"src": "4885:9:2"
},
{
"arguments": [
{
"arguments": [
{
"arguments": [
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4912:1:2",
"type": "",
"value": "3"
},
{
"name": "newLen",
"nodeType": "YulIdentifier",
"src": "4915:6:2"
}
],
"functionName": {
"name": "shl",
"nodeType": "YulIdentifier",
"src": "4908:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4908:14:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4924:3:2",
"type": "",
"value": "248"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "4904:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4904:24:2"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4934:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "4930:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4930:6:2"
}
],
"functionName": {
"name": "shr",
"nodeType": "YulIdentifier",
"src": "4900:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4900:37:2"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "4896:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4896:42:2"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "4881:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4881:58:2"
}
],
"functionName": {
"name": "sstore",
"nodeType": "YulIdentifier",
"src": "4866:6:2"
},
"nodeType": "YulFunctionCall",
"src": "4866:74:2"
},
"nodeType": "YulExpressionStatement",
"src": "4866:74:2"
}
]
},
"condition": {
"arguments": [
{
"name": "loopEnd",
"nodeType": "YulIdentifier",
"src": "4759:7:2"
},
{
"name": "newLen",
"nodeType": "YulIdentifier",
"src": "4768:6:2"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "4756:2:2"
},
"nodeType": "YulFunctionCall",
"src": "4756:19:2"
},
"nodeType": "YulIf",
"src": "4753:201:2"
},
{
"expression": {
"arguments": [
{
"name": "slot",
"nodeType": "YulIdentifier",
"src": "4974:4:2"
},
{
"arguments": [
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4988:1:2",
"type": "",
"value": "1"
},
{
"name": "newLen",
"nodeType": "YulIdentifier",
"src": "4991:6:2"
}
],
"functionName": {
"name": "shl",
"nodeType": "YulIdentifier",
"src": "4984:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4984:14:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5000:1:2",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4980:3:2"
},
"nodeType": "YulFunctionCall",
"src": "4980:22:2"
}
],
"functionName": {
"name": "sstore",
"nodeType": "YulIdentifier",
"src": "4967:6:2"
},
"nodeType": "YulFunctionCall",
"src": "4967:36:2"
},
"nodeType": "YulExpressionStatement",
"src": "4967:36:2"
}
]
},
"nodeType": "YulCase",
"src": "4350:663:2",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "4355:1:2",
"type": "",
"value": "1"
}
},
{
"body": {
"nodeType": "YulBlock",
"src": "5030:234:2",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "5044:14:2",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "5057:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "5048:5:2",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "5093:67:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "5111:35:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "5130:3:2"
},
{
"name": "srcOffset",
"nodeType": "YulIdentifier",
"src": "5135:9:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5126:3:2"
},
"nodeType": "YulFunctionCall",
"src": "5126:19:2"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "5120:5:2"
},
"nodeType": "YulFunctionCall",
"src": "5120:26:2"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "5111:5:2"
}
]
}
]
},
"condition": {
"name": "newLen",
"nodeType": "YulIdentifier",
"src": "5074:6:2"
},
"nodeType": "YulIf",
"src": "5071:89:2"
},
{
"expression": {
"arguments": [
{
"name": "slot",
"nodeType": "YulIdentifier",
"src": "5180:4:2"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "5239:5:2"
},
{
"name": "newLen",
"nodeType": "YulIdentifier",
"src": "5246:6:2"
}
],
"functionName": {
"name": "extract_used_part_and_set_length_of_short_byte_array",
"nodeType": "YulIdentifier",
"src": "5186:52:2"
},
"nodeType": "YulFunctionCall",
"src": "5186:67:2"
}
],
"functionName": {
"name": "sstore",
"nodeType": "YulIdentifier",
"src": "5173:6:2"
},
"nodeType": "YulFunctionCall",
"src": "5173:81:2"
},
"nodeType": "YulExpressionStatement",
"src": "5173:81:2"
}
]
},
"nodeType": "YulCase",
"src": "5022:242:2",
"value": "default"
}
],
"expression": {
"arguments": [
{
"name": "newLen",
"nodeType": "YulIdentifier",
"src": "4330:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4338:2:2",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "4327:2:2"
},
"nodeType": "YulFunctionCall",
"src": "4327:14:2"
},
"nodeType": "YulSwitch",
"src": "4320:944:2"
}
]
},
"name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "slot",
"nodeType": "YulTypedName",
"src": "3999:4:2",
"type": ""
},
{
"name": "src",
"nodeType": "YulTypedName",
"src": "4005:3:2",
"type": ""
}
],
"src": "3918:1352:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5414:150:2",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "5424:27:2",
"value": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "5444:6:2"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "5438:5:2"
},
"nodeType": "YulFunctionCall",
"src": "5438:13:2"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "5428:6:2",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "5499:6:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5507:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5495:3:2"
},
"nodeType": "YulFunctionCall",
"src": "5495:17:2"
},
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "5514:3:2"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5519:6:2"
}
],
"functionName": {
"name": "copy_memory_to_memory_with_cleanup",
"nodeType": "YulIdentifier",
"src": "5460:34:2"
},
"nodeType": "YulFunctionCall",
"src": "5460:66:2"
},
"nodeType": "YulExpressionStatement",
"src": "5460:66:2"
},
{
"nodeType": "YulAssignment",
"src": "5535:23:2",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "5546:3:2"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5551:6:2"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5542:3:2"
},
"nodeType": "YulFunctionCall",
"src": "5542:16:2"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5535:3:2"
}
]
}
]
},
"name": "abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "5390:3:2",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "5395:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "5406:3:2",
"type": ""
}
],
"src": "5275:289:2"
}
]
},
"contents": "{\n { }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_string(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function abi_decode_tuple_t_string_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n value0 := abi_decode_string(add(headStart, offset), dataEnd)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_decode_tuple_t_string_memory_ptr(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n value0 := abi_decode_string(add(headStart, offset), dataEnd)\n }\n function copy_memory_to_memory_with_cleanup(src, dst, length)\n {\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 function abi_encode_tuple_t_uint256_t_string_memory_ptr__to_t_uint256_t_string_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n {\n mstore(headStart, value0)\n mstore(add(headStart, 32), 64)\n let length := mload(value1)\n mstore(add(headStart, 64), length)\n copy_memory_to_memory_with_cleanup(add(value1, 32), add(headStart, 96), length)\n tail := add(add(headStart, and(add(length, 31), not(31))), 96)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\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 function abi_encode_tuple_packed_t_string_memory_ptr__to_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n {\n let length := mload(value0)\n copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n end := add(pos, length)\n }\n}",
"id": 2,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "608060405234801561001057600080fd5b50600436106100575760003560e01c80632e64cec11461005c5780636057361d146100735780636f760f41146100885780638bab8dd51461009b5780639e7a13ad146100c6575b600080fd5b6000545b6040519081526020015b60405180910390f35b610086610081366004610248565b600055565b005b610086610096366004610304565b6100e7565b6100606100a9366004610349565b805160208183018101805160028252928201919093012091525481565b6100d96100d4366004610248565b610190565b60405161006a9291906103aa565b6040805180820190915281815260208101838152600180548082018255600091909152825160029091027fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf68101918255915190917fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf70190610168908261046d565b5050508060028360405161017c919061052d565b908152604051908190036020019020555050565b600181815481106101a057600080fd5b600091825260209091206002909102018054600182018054919350906101c5906103e4565b80601f01602080910402602001604051908101604052809291908181526020018280546101f1906103e4565b801561023e5780601f106102135761010080835404028352916020019161023e565b820191906000526020600020905b81548152906001019060200180831161022157829003601f168201915b5050505050905082565b60006020828403121561025a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261028857600080fd5b813567ffffffffffffffff808211156102a3576102a3610261565b604051601f8301601f19908116603f011681019082821181831017156102cb576102cb610261565b816040528381528660208588010111156102e457600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561031757600080fd5b823567ffffffffffffffff81111561032e57600080fd5b61033a85828601610277565b95602094909401359450505050565b60006020828403121561035b57600080fd5b813567ffffffffffffffff81111561037257600080fd5b61037e84828501610277565b949350505050565b60005b838110156103a1578181015183820152602001610389565b50506000910152565b82815260406020820152600082518060408401526103cf816060850160208701610386565b601f01601f1916919091016060019392505050565b600181811c908216806103f857607f821691505b60208210810361041857634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561046857600081815260208120601f850160051c810160208610156104455750805b601f850160051c820191505b8181101561046457828155600101610451565b5050505b505050565b815167ffffffffffffffff81111561048757610487610261565b61049b8161049584546103e4565b8461041e565b602080601f8311600181146104d057600084156104b85750858301515b600019600386901b1c1916600185901b178555610464565b600085815260208120601f198616915b828110156104ff578886015182559484019460019091019084016104e0565b508582101561051d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000825161053f818460208701610386565b919091019291505056fea2646970667358221220e165745f2380f5d82cd26db642287ff31544d61b26d4ccb6eeaba881d8ae431b64736f6c63430008120033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x57 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x2E64CEC1 EQ PUSH2 0x5C JUMPI DUP1 PUSH4 0x6057361D EQ PUSH2 0x73 JUMPI DUP1 PUSH4 0x6F760F41 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0x8BAB8DD5 EQ PUSH2 0x9B JUMPI DUP1 PUSH4 0x9E7A13AD EQ PUSH2 0xC6 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x86 PUSH2 0x81 CALLDATASIZE PUSH1 0x4 PUSH2 0x248 JUMP JUMPDEST PUSH1 0x0 SSTORE JUMP JUMPDEST STOP JUMPDEST PUSH2 0x86 PUSH2 0x96 CALLDATASIZE PUSH1 0x4 PUSH2 0x304 JUMP JUMPDEST PUSH2 0xE7 JUMP JUMPDEST PUSH2 0x60 PUSH2 0xA9 CALLDATASIZE PUSH1 0x4 PUSH2 0x349 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 DUP2 DUP4 ADD DUP2 ADD DUP1 MLOAD PUSH1 0x2 DUP3 MSTORE SWAP3 DUP3 ADD SWAP2 SWAP1 SWAP4 ADD KECCAK256 SWAP2 MSTORE SLOAD DUP2 JUMP JUMPDEST PUSH2 0xD9 PUSH2 0xD4 CALLDATASIZE PUSH1 0x4 PUSH2 0x248 JUMP JUMPDEST PUSH2 0x190 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6A SWAP3 SWAP2 SWAP1 PUSH2 0x3AA JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP4 DUP2 MSTORE PUSH1 0x1 DUP1 SLOAD DUP1 DUP3 ADD DUP3 SSTORE PUSH1 0x0 SWAP2 SWAP1 SWAP2 MSTORE DUP3 MLOAD PUSH1 0x2 SWAP1 SWAP2 MUL PUSH32 0xB10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF6 DUP2 ADD SWAP2 DUP3 SSTORE SWAP2 MLOAD SWAP1 SWAP2 PUSH32 0xB10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF7 ADD SWAP1 PUSH2 0x168 SWAP1 DUP3 PUSH2 0x46D JUMP JUMPDEST POP POP POP DUP1 PUSH1 0x2 DUP4 PUSH1 0x40 MLOAD PUSH2 0x17C SWAP2 SWAP1 PUSH2 0x52D JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 KECCAK256 SSTORE POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x1A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP1 SWAP2 KECCAK256 PUSH1 0x2 SWAP1 SWAP2 MUL ADD DUP1 SLOAD PUSH1 0x1 DUP3 ADD DUP1 SLOAD SWAP2 SWAP4 POP SWAP1 PUSH2 0x1C5 SWAP1 PUSH2 0x3E4 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 0x1F1 SWAP1 PUSH2 0x3E4 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x23E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x213 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x23E 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 0x221 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x25A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x288 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x2A3 JUMPI PUSH2 0x2A3 PUSH2 0x261 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x2CB JUMPI PUSH2 0x2CB PUSH2 0x261 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x2E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x317 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x32E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x33A DUP6 DUP3 DUP7 ADD PUSH2 0x277 JUMP JUMPDEST SWAP6 PUSH1 0x20 SWAP5 SWAP1 SWAP5 ADD CALLDATALOAD SWAP5 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x35B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x372 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x37E DUP5 DUP3 DUP6 ADD PUSH2 0x277 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3A1 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x389 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST DUP3 DUP2 MSTORE PUSH1 0x40 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 DUP3 MLOAD DUP1 PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x3CF DUP2 PUSH1 0x60 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x386 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP2 SWAP1 SWAP2 ADD PUSH1 0x60 ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x3F8 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x418 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x468 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x445 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x464 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x451 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x487 JUMPI PUSH2 0x487 PUSH2 0x261 JUMP JUMPDEST PUSH2 0x49B DUP2 PUSH2 0x495 DUP5 SLOAD PUSH2 0x3E4 JUMP JUMPDEST DUP5 PUSH2 0x41E JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x4D0 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x4B8 JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x464 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x4FF JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x4E0 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x51D JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0x53F DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0x386 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xE1 PUSH6 0x745F2380F5D8 0x2C 0xD2 PUSH14 0xB642287FF31544D61B26D4CCB6EE 0xAB 0xA8 DUP2 0xD8 0xAE NUMBER SHL PUSH5 0x736F6C6343 STOP ADDMOD SLT STOP CALLER ",
"sourceMap": "56:740:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;514:87;555:7;580:14;514:87;;;160:25:2;;;148:2;133:18;514:87:0;;;;;;;;412:96;;;;;;:::i;:::-;469:14;:32;412:96;;;607:187;;;;;;:::i;:::-;;:::i;351:54::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;322:22;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;607:187::-;701:30;;;;;;;;;;;;;;;;;;689:6;:43;;;;;;;-1:-1:-1;689:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;772:15;742:20;763:5;742:27;;;;;;:::i;:::-;;;;;;;;;;;;;;:45;-1:-1:-1;;607:187:0:o;322:22::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;322:22:0;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;196:180:2:-;255:6;308:2;296:9;287:7;283:23;279:32;276:52;;;324:1;321;314:12;276:52;-1:-1:-1;347:23:2;;196:180;-1:-1:-1;196:180:2:o;381:127::-;442:10;437:3;433:20;430:1;423:31;473:4;470:1;463:15;497:4;494:1;487:15;513:719;556:5;609:3;602:4;594:6;590:17;586:27;576:55;;627:1;624;617:12;576:55;663:6;650:20;689:18;726:2;722;719:10;716:36;;;732:18;;:::i;:::-;807:2;801:9;775:2;861:13;;-1:-1:-1;;857:22:2;;;881:2;853:31;849:40;837:53;;;905:18;;;925:22;;;902:46;899:72;;;951:18;;:::i;:::-;991:10;987:2;980:22;1026:2;1018:6;1011:18;1072:3;1065:4;1060:2;1052:6;1048:15;1044:26;1041:35;1038:55;;;1089:1;1086;1079:12;1038:55;1153:2;1146:4;1138:6;1134:17;1127:4;1119:6;1115:17;1102:54;1200:1;1193:4;1188:2;1180:6;1176:15;1172:26;1165:37;1220:6;1211:15;;;;;;513:719;;;;:::o;1237:390::-;1315:6;1323;1376:2;1364:9;1355:7;1351:23;1347:32;1344:52;;;1392:1;1389;1382:12;1344:52;1432:9;1419:23;1465:18;1457:6;1454:30;1451:50;;;1497:1;1494;1487:12;1451:50;1520;1562:7;1553:6;1542:9;1538:22;1520:50;:::i;:::-;1510:60;1617:2;1602:18;;;;1589:32;;-1:-1:-1;;;;1237:390:2:o;1632:322::-;1701:6;1754:2;1742:9;1733:7;1729:23;1725:32;1722:52;;;1770:1;1767;1760:12;1722:52;1810:9;1797:23;1843:18;1835:6;1832:30;1829:50;;;1875:1;1872;1865:12;1829:50;1898;1940:7;1931:6;1920:9;1916:22;1898:50;:::i;:::-;1888:60;1632:322;-1:-1:-1;;;;1632:322:2:o;1959:250::-;2044:1;2054:113;2068:6;2065:1;2062:13;2054:113;;;2144:11;;;2138:18;2125:11;;;2118:39;2090:2;2083:10;2054:113;;;-1:-1:-1;;2201:1:2;2183:16;;2176:27;1959:250::o;2214:467::-;2391:6;2380:9;2373:25;2434:2;2429;2418:9;2414:18;2407:30;2354:4;2466:6;2460:13;2509:6;2504:2;2493:9;2489:18;2482:34;2525:79;2597:6;2592:2;2581:9;2577:18;2572:2;2564:6;2560:15;2525:79;:::i;:::-;2665:2;2644:15;-1:-1:-1;;2640:29:2;2625:45;;;;2672:2;2621:54;;2214:467;-1:-1:-1;;;2214:467:2:o;2686:380::-;2765:1;2761:12;;;;2808;;;2829:61;;2883:4;2875:6;2871:17;2861:27;;2829:61;2936:2;2928:6;2925:14;2905:18;2902:38;2899:161;;2982:10;2977:3;2973:20;2970:1;2963:31;3017:4;3014:1;3007:15;3045:4;3042:1;3035:15;2899:161;;2686:380;;;:::o;3197:545::-;3299:2;3294:3;3291:11;3288:448;;;3335:1;3360:5;3356:2;3349:17;3405:4;3401:2;3391:19;3475:2;3463:10;3459:19;3456:1;3452:27;3446:4;3442:38;3511:4;3499:10;3496:20;3493:47;;;-1:-1:-1;3534:4:2;3493:47;3589:2;3584:3;3580:12;3577:1;3573:20;3567:4;3563:31;3553:41;;3644:82;3662:2;3655:5;3652:13;3644:82;;;3707:17;;;3688:1;3677:13;3644:82;;;3648:3;;;3288:448;3197:545;;;:::o;3918:1352::-;4044:3;4038:10;4071:18;4063:6;4060:30;4057:56;;;4093:18;;:::i;:::-;4122:97;4212:6;4172:38;4204:4;4198:11;4172:38;:::i;:::-;4166:4;4122:97;:::i;:::-;4274:4;;4338:2;4327:14;;4355:1;4350:663;;;;5057:1;5074:6;5071:89;;;-1:-1:-1;5126:19:2;;;5120:26;5071:89;-1:-1:-1;;3875:1:2;3871:11;;;3867:24;3863:29;3853:40;3899:1;3895:11;;;3850:57;5173:81;;4320:944;;4350:663;3144:1;3137:14;;;3181:4;3168:18;;-1:-1:-1;;4386:20:2;;;4504:236;4518:7;4515:1;4512:14;4504:236;;;4607:19;;;4601:26;4586:42;;4699:27;;;;4667:1;4655:14;;;;4534:19;;4504:236;;;4508:3;4768:6;4759:7;4756:19;4753:201;;;4829:19;;;4823:26;-1:-1:-1;;4912:1:2;4908:14;;;4924:3;4904:24;4900:37;4896:42;4881:58;4866:74;;4753:201;-1:-1:-1;;;;;5000:1:2;4984:14;;;4980:22;4967:36;;-1:-1:-1;3918:1352:2:o;5275:289::-;5406:3;5444:6;5438:13;5460:66;5519:6;5514:3;5507:4;5499:6;5495:17;5460:66;:::i;:::-;5542:16;;;;;5275:289;-1:-1:-1;;5275:289:2:o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "281400",
"executionCost": "318",
"totalCost": "281718"
},
"external": {
"addPerson(string,uint256)": "infinite",
"nameToFavoriteNumber(string)": "infinite",
"people(uint256)": "infinite",
"retrieve()": "2248",
"store(uint256)": "22312"
}
},
"legacyAssembly": {
".code": [
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 56,
"end": 796,
"name": "MSTORE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "ISZERO",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "REVERT",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 56,
"end": 796,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "POP",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "CODECOPY",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a2646970667358221220e165745f2380f5d82cd26db642287ff31544d61b26d4ccb6eeaba881d8ae431b64736f6c63430008120033",
".code": [
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 56,
"end": 796,
"name": "MSTORE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "ISZERO",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "REVERT",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 56,
"end": 796,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "POP",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 56,
"end": 796,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "LT",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 56,
"end": 796,
"name": "SHR",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "2E64CEC1"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "6057361D"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "6F760F41"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "8BAB8DD5"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "9E7A13AD"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 56,
"end": 796,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "REVERT",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 514,
"end": 601,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 555,
"end": 562,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 580,
"end": 594,
"name": "SLOAD",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 514,
"end": 601,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 514,
"end": 601,
"name": "MLOAD",
"source": 0
},
{
"begin": 160,
"end": 185,
"name": "SWAP1",
"source": 2
},
{
"begin": 160,
"end": 185,
"name": "DUP2",
"source": 2
},
{
"begin": 160,
"end": 185,
"name": "MSTORE",
"source": 2
},
{
"begin": 148,
"end": 150,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 133,
"end": 151,
"name": "ADD",
"source": 2
},
{
"begin": 514,
"end": 601,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 514,
"end": 601,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 514,
"end": 601,
"name": "MLOAD",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "DUP1",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "SWAP2",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "SUB",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "SWAP1",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "RETURN",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 412,
"end": 508,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 412,
"end": 508,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 412,
"end": 508,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 412,
"end": 508,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 412,
"end": 508,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 412,
"end": 508,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 469,
"end": 483,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 469,
"end": 501,
"name": "SSTORE",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "JUMP",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "tag",
"source": 0,
"value": "12"
},
{
"begin": 412,
"end": 508,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "STOP",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 607,
"end": 794,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 607,
"end": 794,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 607,
"end": 794,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 607,
"end": 794,
"name": "PUSH [tag]",
"source": 0,
"value": "18"
},
{
"begin": 607,
"end": 794,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "tag",
"source": 0,
"value": "17"
},
{
"begin": 607,
"end": 794,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 607,
"end": 794,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 351,
"end": 405,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 351,
"end": 405,
"name": "PUSH [tag]",
"source": 0,
"value": "21"
},
{
"begin": 351,
"end": 405,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 351,
"end": 405,
"name": "PUSH [tag]",
"source": 0,
"value": "22"
},
{
"begin": 351,
"end": 405,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "tag",
"source": 0,
"value": "21"
},
{
"begin": 351,
"end": 405,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP1",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "MLOAD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 351,
"end": 405,
"name": "DUP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP4",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "ADD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "ADD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP1",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "MLOAD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 351,
"end": 405,
"name": "DUP3",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "MSTORE",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP3",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP3",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "ADD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP1",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP4",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "ADD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "KECCAK256",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "MSTORE",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SLOAD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "25"
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "26"
},
{
"begin": 322,
"end": 344,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "26"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "27"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "25"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "MLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 322,
"end": 344,
"name": "SWAP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "29"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "tag",
"source": 0,
"value": "19"
},
{
"begin": 607,
"end": 794,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 701,
"end": 731,
"name": "DUP1",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "MLOAD",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP1",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP3",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "ADD",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "SWAP1",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "SWAP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "MSTORE",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "MSTORE",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 701,
"end": 731,
"name": "DUP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "ADD",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP4",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "MSTORE",
"source": 0
},
{
"begin": 689,
"end": 695,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 689,
"end": 732,
"name": "DUP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SLOAD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "ADD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SSTORE",
"source": 0
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "0"
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "MSTORE",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "MLOAD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "MUL",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH",
"source": 0,
"value": "B10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF6"
},
{
"begin": 689,
"end": 732,
"name": "DUP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "ADD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SSTORE",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "MLOAD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH",
"source": 0,
"value": "B10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF7"
},
{
"begin": 689,
"end": 732,
"name": "ADD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH [tag]",
"source": 0,
"value": "34"
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH [tag]",
"source": 0,
"value": "35"
},
{
"begin": 689,
"end": 732,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "tag",
"source": 0,
"value": "34"
},
{
"begin": 689,
"end": 732,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "POP",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "POP",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "POP",
"source": 0
},
{
"begin": 772,
"end": 787,
"name": "DUP1",
"source": 0
},
{
"begin": 742,
"end": 762,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 763,
"end": 768,
"name": "DUP4",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 742,
"end": 769,
"name": "MLOAD",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH [tag]",
"source": 0,
"value": "36"
},
{
"begin": 742,
"end": 769,
"name": "SWAP2",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH [tag]",
"source": 0,
"value": "37"
},
{
"begin": 742,
"end": 769,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "tag",
"source": 0,
"value": "36"
},
{
"begin": 742,
"end": 769,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "DUP2",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "MSTORE",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 742,
"end": 769,
"name": "MLOAD",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "DUP2",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SUB",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 742,
"end": 769,
"name": "ADD",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "KECCAK256",
"source": 0
},
{
"begin": 742,
"end": 787,
"name": "SSTORE",
"source": 0
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 607,
"end": 794,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "27"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "LT",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "38"
},
{
"begin": 322,
"end": 344,
"name": "JUMPI",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "REVERT",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "38"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "KECCAK256",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MUL",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP4",
"source": 0
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "41"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DIV",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MUL",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "MLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "42"
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "41"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "42"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ISZERO",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "43"
},
{
"begin": 322,
"end": 344,
"name": "JUMPI",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 322,
"end": 344,
"name": "LT",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "44"
},
{
"begin": 322,
"end": 344,
"name": "JUMPI",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP4",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DIV",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MUL",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP4",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "43"
},
{
"begin": 322,
"end": 344,
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "44"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 322,
"end": 344,
"name": "KECCAK256",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "45"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP4",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "GT",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "45"
},
{
"begin": 322,
"end": 344,
"name": "JUMPI",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SUB",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 322,
"end": 344,
"name": "AND",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "43"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 196,
"end": 376,
"name": "tag",
"source": 2,
"value": "14"
},
{
"begin": 196,
"end": 376,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 255,
"end": 261,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 308,
"end": 310,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 296,
"end": 305,
"name": "DUP3",
"source": 2
},
{
"begin": 287,
"end": 294,
"name": "DUP5",
"source": 2
},
{
"begin": 283,
"end": 306,
"name": "SUB",
"source": 2
},
{
"begin": 279,
"end": 311,
"name": "SLT",
"source": 2
},
{
"begin": 276,
"end": 328,
"name": "ISZERO",
"source": 2
},
{
"begin": 276,
"end": 328,
"name": "PUSH [tag]",
"source": 2,
"value": "55"
},
{
"begin": 276,
"end": 328,
"name": "JUMPI",
"source": 2
},
{
"begin": 324,
"end": 325,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 321,
"end": 322,
"name": "DUP1",
"source": 2
},
{
"begin": 314,
"end": 326,
"name": "REVERT",
"source": 2
},
{
"begin": 276,
"end": 328,
"name": "tag",
"source": 2,
"value": "55"
},
{
"begin": 276,
"end": 328,
"name": "JUMPDEST",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 347,
"end": 370,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 347,
"end": 370,
"name": "SWAP2",
"source": 2
},
{
"begin": 196,
"end": 376,
"name": "SWAP1",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 196,
"end": 376,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 381,
"end": 508,
"name": "tag",
"source": 2,
"value": "46"
},
{
"begin": 381,
"end": 508,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 442,
"end": 452,
"name": "PUSH",
"source": 2,
"value": "4E487B71"
},
{
"begin": 437,
"end": 440,
"name": "PUSH",
"source": 2,
"value": "E0"
},
{
"begin": 433,
"end": 453,
"name": "SHL",
"source": 2
},
{
"begin": 430,
"end": 431,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 423,
"end": 454,
"name": "MSTORE",
"source": 2
},
{
"begin": 473,
"end": 477,
"name": "PUSH",
"source": 2,
"value": "41"
},
{
"begin": 470,
"end": 471,
"name": "PUSH",
"source": 2,
"value": "4"
},
{
"begin": 463,
"end": 478,
"name": "MSTORE",
"source": 2
},
{
"begin": 497,
"end": 501,
"name": "PUSH",
"source": 2,
"value": "24"
},
{
"begin": 494,
"end": 495,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 487,
"end": 502,
"name": "REVERT",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "tag",
"source": 2,
"value": "47"
},
{
"begin": 513,
"end": 1232,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 556,
"end": 561,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 609,
"end": 612,
"name": "DUP3",
"source": 2
},
{
"begin": 602,
"end": 606,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 594,
"end": 600,
"name": "DUP4",
"source": 2
},
{
"begin": 590,
"end": 607,
"name": "ADD",
"source": 2
},
{
"begin": 586,
"end": 613,
"name": "SLT",
"source": 2
},
{
"begin": 576,
"end": 631,
"name": "PUSH [tag]",
"source": 2,
"value": "58"
},
{
"begin": 576,
"end": 631,
"name": "JUMPI",
"source": 2
},
{
"begin": 627,
"end": 628,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 624,
"end": 625,
"name": "DUP1",
"source": 2
},
{
"begin": 617,
"end": 629,
"name": "REVERT",
"source": 2
},
{
"begin": 576,
"end": 631,
"name": "tag",
"source": 2,
"value": "58"
},
{
"begin": 576,
"end": 631,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 663,
"end": 669,
"name": "DUP2",
"source": 2
},
{
"begin": 650,
"end": 670,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 689,
"end": 707,
"name": "PUSH",
"source": 2,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 726,
"end": 728,
"name": "DUP1",
"source": 2
},
{
"begin": 722,
"end": 724,
"name": "DUP3",
"source": 2
},
{
"begin": 719,
"end": 729,
"name": "GT",
"source": 2
},
{
"begin": 716,
"end": 752,
"name": "ISZERO",
"source": 2
},
{
"begin": 716,
"end": 752,
"name": "PUSH [tag]",
"source": 2,
"value": "60"
},
{
"begin": 716,
"end": 752,
"name": "JUMPI",
"source": 2
},
{
"begin": 732,
"end": 750,
"name": "PUSH [tag]",
"source": 2,
"value": "60"
},
{
"begin": 732,
"end": 750,
"name": "PUSH [tag]",
"source": 2,
"value": "46"
},
{
"begin": 732,
"end": 750,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 732,
"end": 750,
"name": "tag",
"source": 2,
"value": "60"
},
{
"begin": 732,
"end": 750,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 807,
"end": 809,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 801,
"end": 810,
"name": "MLOAD",
"source": 2
},
{
"begin": 775,
"end": 777,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 861,
"end": 874,
"name": "DUP4",
"source": 2
},
{
"begin": 861,
"end": 874,
"name": "ADD",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1F"
},
{
"begin": -1,
"end": -1,
"name": "NOT",
"source": -1
},
{
"begin": 857,
"end": 879,
"name": "SWAP1",
"source": 2
},
{
"begin": 857,
"end": 879,
"name": "DUP2",
"source": 2
},
{
"begin": 857,
"end": 879,
"name": "AND",
"source": 2
},
{
"begin": 881,
"end": 883,
"name": "PUSH",
"source": 2,
"value": "3F"
},
{
"begin": 853,
"end": 884,
"name": "ADD",
"source": 2
},
{
"begin": 849,
"end": 889,
"name": "AND",
"source": 2
},
{
"begin": 837,
"end": 890,
"name": "DUP2",
"source": 2
},
{
"begin": 837,
"end": 890,
"name": "ADD",
"source": 2
},
{
"begin": 837,
"end": 890,
"name": "SWAP1",
"source": 2
},
{
"begin": 905,
"end": 923,
"name": "DUP3",
"source": 2
},
{
"begin": 905,
"end": 923,
"name": "DUP3",
"source": 2
},
{
"begin": 905,
"end": 923,
"name": "GT",
"source": 2
},
{
"begin": 925,
"end": 947,
"name": "DUP2",
"source": 2
},
{
"begin": 925,
"end": 947,
"name": "DUP4",
"source": 2
},
{
"begin": 925,
"end": 947,
"name": "LT",
"source": 2
},
{
"begin": 902,
"end": 948,
"name": "OR",
"source": 2
},
{
"begin": 899,
"end": 971,
"name": "ISZERO",
"source": 2
},
{
"begin": 899,
"end": 971,
"name": "PUSH [tag]",
"source": 2,
"value": "62"
},
{
"begin": 899,
"end": 971,
"name": "JUMPI",
"source": 2
},
{
"begin": 951,
"end": 969,
"name": "PUSH [tag]",
"source": 2,
"value": "62"
},
{
"begin": 951,
"end": 969,
"name": "PUSH [tag]",
"source": 2,
"value": "46"
},
{
"begin": 951,
"end": 969,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 951,
"end": 969,
"name": "tag",
"source": 2,
"value": "62"
},
{
"begin": 951,
"end": 969,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 991,
"end": 1001,
"name": "DUP2",
"source": 2
},
{
"begin": 987,
"end": 989,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 980,
"end": 1002,
"name": "MSTORE",
"source": 2
},
{
"begin": 1026,
"end": 1028,
"name": "DUP4",
"source": 2
},
{
"begin": 1018,
"end": 1024,
"name": "DUP2",
"source": 2
},
{
"begin": 1011,
"end": 1029,
"name": "MSTORE",
"source": 2
},
{
"begin": 1072,
"end": 1075,
"name": "DUP7",
"source": 2
},
{
"begin": 1065,
"end": 1069,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1060,
"end": 1062,
"name": "DUP6",
"source": 2
},
{
"begin": 1052,
"end": 1058,
"name": "DUP9",
"source": 2
},
{
"begin": 1048,
"end": 1063,
"name": "ADD",
"source": 2
},
{
"begin": 1044,
"end": 1070,
"name": "ADD",
"source": 2
},
{
"begin": 1041,
"end": 1076,
"name": "GT",
"source": 2
},
{
"begin": 1038,
"end": 1093,
"name": "ISZERO",
"source": 2
},
{
"begin": 1038,
"end": 1093,
"name": "PUSH [tag]",
"source": 2,
"value": "63"
},
{
"begin": 1038,
"end": 1093,
"name": "JUMPI",
"source": 2
},
{
"begin": 1089,
"end": 1090,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1086,
"end": 1087,
"name": "DUP1",
"source": 2
},
{
"begin": 1079,
"end": 1091,
"name": "REVERT",
"source": 2
},
{
"begin": 1038,
"end": 1093,
"name": "tag",
"source": 2,
"value": "63"
},
{
"begin": 1038,
"end": 1093,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1153,
"end": 1155,
"name": "DUP4",
"source": 2
},
{
"begin": 1146,
"end": 1150,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1138,
"end": 1144,
"name": "DUP8",
"source": 2
},
{
"begin": 1134,
"end": 1151,
"name": "ADD",
"source": 2
},
{
"begin": 1127,
"end": 1131,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1119,
"end": 1125,
"name": "DUP4",
"source": 2
},
{
"begin": 1115,
"end": 1132,
"name": "ADD",
"source": 2
},
{
"begin": 1102,
"end": 1156,
"name": "CALLDATACOPY",
"source": 2
},
{
"begin": 1200,
"end": 1201,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1193,
"end": 1197,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1188,
"end": 1190,
"name": "DUP6",
"source": 2
},
{
"begin": 1180,
"end": 1186,
"name": "DUP4",
"source": 2
},
{
"begin": 1176,
"end": 1191,
"name": "ADD",
"source": 2
},
{
"begin": 1172,
"end": 1198,
"name": "ADD",
"source": 2
},
{
"begin": 1165,
"end": 1202,
"name": "MSTORE",
"source": 2
},
{
"begin": 1220,
"end": 1226,
"name": "DUP1",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "SWAP5",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "SWAP3",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "SWAP2",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "POP",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "POP",
"source": 2
},
{
"begin": 513,
"end": 1232,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1237,
"end": 1627,
"name": "tag",
"source": 2,
"value": "18"
},
{
"begin": 1237,
"end": 1627,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1315,
"end": 1321,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1323,
"end": 1329,
"name": "DUP1",
"source": 2
},
{
"begin": 1376,
"end": 1378,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 1364,
"end": 1373,
"name": "DUP4",
"source": 2
},
{
"begin": 1355,
"end": 1362,
"name": "DUP6",
"source": 2
},
{
"begin": 1351,
"end": 1374,
"name": "SUB",
"source": 2
},
{
"begin": 1347,
"end": 1379,
"name": "SLT",
"source": 2
},
{
"begin": 1344,
"end": 1396,
"name": "ISZERO",
"source": 2
},
{
"begin": 1344,
"end": 1396,
"name": "PUSH [tag]",
"source": 2,
"value": "65"
},
{
"begin": 1344,
"end": 1396,
"name": "JUMPI",
"source": 2
},
{
"begin": 1392,
"end": 1393,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1389,
"end": 1390,
"name": "DUP1",
"source": 2
},
{
"begin": 1382,
"end": 1394,
"name": "REVERT",
"source": 2
},
{
"begin": 1344,
"end": 1396,
"name": "tag",
"source": 2,
"value": "65"
},
{
"begin": 1344,
"end": 1396,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1432,
"end": 1441,
"name": "DUP3",
"source": 2
},
{
"begin": 1419,
"end": 1442,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 1465,
"end": 1483,
"name": "PUSH",
"source": 2,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 1457,
"end": 1463,
"name": "DUP2",
"source": 2
},
{
"begin": 1454,
"end": 1484,
"name": "GT",
"source": 2
},
{
"begin": 1451,
"end": 1501,
"name": "ISZERO",
"source": 2
},
{
"begin": 1451,
"end": 1501,
"name": "PUSH [tag]",
"source": 2,
"value": "66"
},
{
"begin": 1451,
"end": 1501,
"name": "JUMPI",
"source": 2
},
{
"begin": 1497,
"end": 1498,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1494,
"end": 1495,
"name": "DUP1",
"source": 2
},
{
"begin": 1487,
"end": 1499,
"name": "REVERT",
"source": 2
},
{
"begin": 1451,
"end": 1501,
"name": "tag",
"source": 2,
"value": "66"
},
{
"begin": 1451,
"end": 1501,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1520,
"end": 1570,
"name": "PUSH [tag]",
"source": 2,
"value": "67"
},
{
"begin": 1562,
"end": 1569,
"name": "DUP6",
"source": 2
},
{
"begin": 1553,
"end": 1559,
"name": "DUP3",
"source": 2
},
{
"begin": 1542,
"end": 1551,
"name": "DUP7",
"source": 2
},
{
"begin": 1538,
"end": 1560,
"name": "ADD",
"source": 2
},
{
"begin": 1520,
"end": 1570,
"name": "PUSH [tag]",
"source": 2,
"value": "47"
},
{
"begin": 1520,
"end": 1570,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 1520,
"end": 1570,
"name": "tag",
"source": 2,
"value": "67"
},
{
"begin": 1520,
"end": 1570,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1510,
"end": 1570,
"name": "SWAP6",
"source": 2
},
{
"begin": 1617,
"end": 1619,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1602,
"end": 1620,
"name": "SWAP5",
"source": 2
},
{
"begin": 1602,
"end": 1620,
"name": "SWAP1",
"source": 2
},
{
"begin": 1602,
"end": 1620,
"name": "SWAP5",
"source": 2
},
{
"begin": 1602,
"end": 1620,
"name": "ADD",
"source": 2
},
{
"begin": 1589,
"end": 1621,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 1589,
"end": 1621,
"name": "SWAP5",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 1237,
"end": 1627,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1632,
"end": 1954,
"name": "tag",
"source": 2,
"value": "22"
},
{
"begin": 1632,
"end": 1954,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1701,
"end": 1707,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1754,
"end": 1756,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1742,
"end": 1751,
"name": "DUP3",
"source": 2
},
{
"begin": 1733,
"end": 1740,
"name": "DUP5",
"source": 2
},
{
"begin": 1729,
"end": 1752,
"name": "SUB",
"source": 2
},
{
"begin": 1725,
"end": 1757,
"name": "SLT",
"source": 2
},
{
"begin": 1722,
"end": 1774,
"name": "ISZERO",
"source": 2
},
{
"begin": 1722,
"end": 1774,
"name": "PUSH [tag]",
"source": 2,
"value": "69"
},
{
"begin": 1722,
"end": 1774,
"name": "JUMPI",
"source": 2
},
{
"begin": 1770,
"end": 1771,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1767,
"end": 1768,
"name": "DUP1",
"source": 2
},
{
"begin": 1760,
"end": 1772,
"name": "REVERT",
"source": 2
},
{
"begin": 1722,
"end": 1774,
"name": "tag",
"source": 2,
"value": "69"
},
{
"begin": 1722,
"end": 1774,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1810,
"end": 1819,
"name": "DUP2",
"source": 2
},
{
"begin": 1797,
"end": 1820,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 1843,
"end": 1861,
"name": "PUSH",
"source": 2,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 1835,
"end": 1841,
"name": "DUP2",
"source": 2
},
{
"begin": 1832,
"end": 1862,
"name": "GT",
"source": 2
},
{
"begin": 1829,
"end": 1879,
"name": "ISZERO",
"source": 2
},
{
"begin": 1829,
"end": 1879,
"name": "PUSH [tag]",
"source": 2,
"value": "70"
},
{
"begin": 1829,
"end": 1879,
"name": "JUMPI",
"source": 2
},
{
"begin": 1875,
"end": 1876,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1872,
"end": 1873,
"name": "DUP1",
"source": 2
},
{
"begin": 1865,
"end": 1877,
"name": "REVERT",
"source": 2
},
{
"begin": 1829,
"end": 1879,
"name": "tag",
"source": 2,
"value": "70"
},
{
"begin": 1829,
"end": 1879,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1898,
"end": 1948,
"name": "PUSH [tag]",
"source": 2,
"value": "71"
},
{
"begin": 1940,
"end": 1947,
"name": "DUP5",
"source": 2
},
{
"begin": 1931,
"end": 1937,
"name": "DUP3",
"source": 2
},
{
"begin": 1920,
"end": 1929,
"name": "DUP6",
"source": 2
},
{
"begin": 1916,
"end": 1938,
"name": "ADD",
"source": 2
},
{
"begin": 1898,
"end": 1948,
"name": "PUSH [tag]",
"source": 2,
"value": "47"
},
{
"begin": 1898,
"end": 1948,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 1898,
"end": 1948,
"name": "tag",
"source": 2,
"value": "71"
},
{
"begin": 1898,
"end": 1948,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1888,
"end": 1948,
"name": "SWAP5",
"source": 2
},
{
"begin": 1632,
"end": 1954,
"name": "SWAP4",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 1632,
"end": 1954,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1959,
"end": 2209,
"name": "tag",
"source": 2,
"value": "48"
},
{
"begin": 1959,
"end": 2209,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2044,
"end": 2045,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2054,
"end": 2167,
"name": "tag",
"source": 2,
"value": "73"
},
{
"begin": 2054,
"end": 2167,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2068,
"end": 2074,
"name": "DUP4",
"source": 2
},
{
"begin": 2065,
"end": 2066,
"name": "DUP2",
"source": 2
},
{
"begin": 2062,
"end": 2075,
"name": "LT",
"source": 2
},
{
"begin": 2054,
"end": 2167,
"name": "ISZERO",
"source": 2
},
{
"begin": 2054,
"end": 2167,
"name": "PUSH [tag]",
"source": 2,
"value": "75"
},
{
"begin": 2054,
"end": 2167,
"name": "JUMPI",
"source": 2
},
{
"begin": 2144,
"end": 2155,
"name": "DUP2",
"source": 2
},
{
"begin": 2144,
"end": 2155,
"name": "DUP2",
"source": 2
},
{
"begin": 2144,
"end": 2155,
"name": "ADD",
"source": 2
},
{
"begin": 2138,
"end": 2156,
"name": "MLOAD",
"source": 2
},
{
"begin": 2125,
"end": 2136,
"name": "DUP4",
"source": 2
},
{
"begin": 2125,
"end": 2136,
"name": "DUP3",
"source": 2
},
{
"begin": 2125,
"end": 2136,
"name": "ADD",
"source": 2
},
{
"begin": 2118,
"end": 2157,
"name": "MSTORE",
"source": 2
},
{
"begin": 2090,
"end": 2092,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2083,
"end": 2093,
"name": "ADD",
"source": 2
},
{
"begin": 2054,
"end": 2167,
"name": "PUSH [tag]",
"source": 2,
"value": "73"
},
{
"begin": 2054,
"end": 2167,
"name": "JUMP",
"source": 2
},
{
"begin": 2054,
"end": 2167,
"name": "tag",
"source": 2,
"value": "75"
},
{
"begin": 2054,
"end": 2167,
"name": "JUMPDEST",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 2201,
"end": 2202,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2183,
"end": 2199,
"name": "SWAP2",
"source": 2
},
{
"begin": 2183,
"end": 2199,
"name": "ADD",
"source": 2
},
{
"begin": 2176,
"end": 2203,
"name": "MSTORE",
"source": 2
},
{
"begin": 1959,
"end": 2209,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2214,
"end": 2681,
"name": "tag",
"source": 2,
"value": "29"
},
{
"begin": 2214,
"end": 2681,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2391,
"end": 2397,
"name": "DUP3",
"source": 2
},
{
"begin": 2380,
"end": 2389,
"name": "DUP2",
"source": 2
},
{
"begin": 2373,
"end": 2398,
"name": "MSTORE",
"source": 2
},
{
"begin": 2434,
"end": 2436,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 2429,
"end": 2431,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2418,
"end": 2427,
"name": "DUP3",
"source": 2
},
{
"begin": 2414,
"end": 2432,
"name": "ADD",
"source": 2
},
{
"begin": 2407,
"end": 2437,
"name": "MSTORE",
"source": 2
},
{
"begin": 2354,
"end": 2358,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2466,
"end": 2472,
"name": "DUP3",
"source": 2
},
{
"begin": 2460,
"end": 2473,
"name": "MLOAD",
"source": 2
},
{
"begin": 2509,
"end": 2515,
"name": "DUP1",
"source": 2
},
{
"begin": 2504,
"end": 2506,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 2493,
"end": 2502,
"name": "DUP5",
"source": 2
},
{
"begin": 2489,
"end": 2507,
"name": "ADD",
"source": 2
},
{
"begin": 2482,
"end": 2516,
"name": "MSTORE",
"source": 2
},
{
"begin": 2525,
"end": 2604,
"name": "PUSH [tag]",
"source": 2,
"value": "77"
},
{
"begin": 2597,
"end": 2603,
"name": "DUP2",
"source": 2
},
{
"begin": 2592,
"end": 2594,
"name": "PUSH",
"source": 2,
"value": "60"
},
{
"begin": 2581,
"end": 2590,
"name": "DUP6",
"source": 2
},
{
"begin": 2577,
"end": 2595,
"name": "ADD",
"source": 2
},
{
"begin": 2572,
"end": 2574,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2564,
"end": 2570,
"name": "DUP8",
"source": 2
},
{
"begin": 2560,
"end": 2575,
"name": "ADD",
"source": 2
},
{
"begin": 2525,
"end": 2604,
"name": "PUSH [tag]",
"source": 2,
"value": "48"
},
{
"begin": 2525,
"end": 2604,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 2525,
"end": 2604,
"name": "tag",
"source": 2,
"value": "77"
},
{
"begin": 2525,
"end": 2604,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2665,
"end": 2667,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 2644,
"end": 2659,
"name": "ADD",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1F"
},
{
"begin": -1,
"end": -1,
"name": "NOT",
"source": -1
},
{
"begin": 2640,
"end": 2669,
"name": "AND",
"source": 2
},
{
"begin": 2625,
"end": 2670,
"name": "SWAP2",
"source": 2
},
{
"begin": 2625,
"end": 2670,
"name": "SWAP1",
"source": 2
},
{
"begin": 2625,
"end": 2670,
"name": "SWAP2",
"source": 2
},
{
"begin": 2625,
"end": 2670,
"name": "ADD",
"source": 2
},
{
"begin": 2672,
"end": 2674,
"name": "PUSH",
"source": 2,
"value": "60"
},
{
"begin": 2621,
"end": 2675,
"name": "ADD",
"source": 2
},
{
"begin": 2621,
"end": 2675,
"name": "SWAP4",
"source": 2
},
{
"begin": 2214,
"end": 2681,
"name": "SWAP3",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 2214,
"end": 2681,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"name": "tag",
"source": 2,
"value": "41"
},
{
"begin": 2686,
"end": 3066,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2765,
"end": 2766,
"name": "PUSH",
"source": 2,
"value": "1"
},
{
"begin": 2761,
"end": 2773,
"name": "DUP2",
"source": 2
},
{
"begin": 2761,
"end": 2773,
"name": "DUP2",
"source": 2
},
{
"begin": 2761,
"end": 2773,
"name": "SHR",
"source": 2
},
{
"begin": 2761,
"end": 2773,
"name": "SWAP1",
"source": 2
},
{
"begin": 2808,
"end": 2820,
"name": "DUP3",
"source": 2
},
{
"begin": 2808,
"end": 2820,
"name": "AND",
"source": 2
},
{
"begin": 2808,
"end": 2820,
"name": "DUP1",
"source": 2
},
{
"begin": 2829,
"end": 2890,
"name": "PUSH [tag]",
"source": 2,
"value": "79"
},
{
"begin": 2829,
"end": 2890,
"name": "JUMPI",
"source": 2
},
{
"begin": 2883,
"end": 2887,
"name": "PUSH",
"source": 2,
"value": "7F"
},
{
"begin": 2875,
"end": 2881,
"name": "DUP3",
"source": 2
},
{
"begin": 2871,
"end": 2888,
"name": "AND",
"source": 2
},
{
"begin": 2861,
"end": 2888,
"name": "SWAP2",
"source": 2
},
{
"begin": 2861,
"end": 2888,
"name": "POP",
"source": 2
},
{
"begin": 2829,
"end": 2890,
"name": "tag",
"source": 2,
"value": "79"
},
{
"begin": 2829,
"end": 2890,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2936,
"end": 2938,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2928,
"end": 2934,
"name": "DUP3",
"source": 2
},
{
"begin": 2925,
"end": 2939,
"name": "LT",
"source": 2
},
{
"begin": 2905,
"end": 2923,
"name": "DUP2",
"source": 2
},
{
"begin": 2902,
"end": 2940,
"name": "SUB",
"source": 2
},
{
"begin": 2899,
"end": 3060,
"name": "PUSH [tag]",
"source": 2,
"value": "80"
},
{
"begin": 2899,
"end": 3060,
"name": "JUMPI",
"source": 2
},
{
"begin": 2982,
"end": 2992,
"name": "PUSH",
"source": 2,
"value": "4E487B71"
},
{
"begin": 2977,
"end": 2980,
"name": "PUSH",
"source": 2,
"value": "E0"
},
{
"begin": 2973,
"end": 2993,
"name": "SHL",
"source": 2
},
{
"begin": 2970,
"end": 2971,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2963,
"end": 2994,
"name": "MSTORE",
"source": 2
},
{
"begin": 3017,
"end": 3021,
"name": "PUSH",
"source": 2,
"value": "22"
},
{
"begin": 3014,
"end": 3015,
"name": "PUSH",
"source": 2,
"value": "4"
},
{
"begin": 3007,
"end": 3022,
"name": "MSTORE",
"source": 2
},
{
"begin": 3045,
"end": 3049,
"name": "PUSH",
"source": 2,
"value": "24"
},
{
"begin": 3042,
"end": 3043,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 3035,
"end": 3050,
"name": "REVERT",
"source": 2
},
{
"begin": 2899,
"end": 3060,
"name": "tag",
"source": 2,
"value": "80"
},
{
"begin": 2899,
"end": 3060,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2899,
"end": 3060,
"name": "POP",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"name": "SWAP2",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"name": "SWAP1",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"name": "POP",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 3197,
"end": 3742,
"name": "tag",
"source": 2,
"value": "50"
},
{
"begin": 3197,
"end": 3742,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3299,
"end": 3301,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 3294,
"end": 3297,
"name": "DUP3",
"source": 2
},
{
"begin": 3291,
"end": 3302,
"name": "GT",
"source": 2
},
{
"begin": 3288,
"end": 3736,
"name": "ISZERO",
"source": 2
},
{
"begin": 3288,
"end": 3736,
"name": "PUSH [tag]",
"source": 2,
"value": "83"
},
{
"begin": 3288,
"end": 3736,
"name": "JUMPI",
"source": 2
},
{
"begin": 3335,
"end": 3336,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 3360,
"end": 3365,
"name": "DUP2",
"source": 2
},
{
"begin": 3356,
"end": 3358,
"name": "DUP2",
"source": 2
},
{
"begin": 3349,
"end": 3366,
"name": "MSTORE",
"source": 2
},
{
"begin": 3405,
"end": 3409,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 3401,
"end": 3403,
"name": "DUP2",
"source": 2
},
{
"begin": 3391,
"end": 3410,
"name": "KECCAK256",
"source": 2
},
{
"begin": 3475,
"end": 3477,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 3463,
"end": 3473,
"name": "DUP6",
"source": 2
},
{
"begin": 3459,
"end": 3478,
"name": "ADD",
"source": 2
},
{
"begin": 3456,
"end": 3457,
"name": "PUSH",
"source": 2,
"value": "5"
},
{
"begin": 3452,
"end": 3479,
"name": "SHR",
"source": 2
},
{
"begin": 3446,
"end": 3450,
"name": "DUP2",
"source": 2
},
{
"begin": 3442,
"end": 3480,
"name": "ADD",
"source": 2
},
{
"begin": 3511,
"end": 3515,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 3499,
"end": 3509,
"name": "DUP7",
"source": 2
},
{
"begin": 3496,
"end": 3516,
"name": "LT",
"source": 2
},
{
"begin": 3493,
"end": 3540,
"name": "ISZERO",
"source": 2
},
{
"begin": 3493,
"end": 3540,
"name": "PUSH [tag]",
"source": 2,
"value": "84"
},
{
"begin": 3493,
"end": 3540,
"name": "JUMPI",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 3534,
"end": 3538,
"name": "DUP1",
"source": 2
},
{
"begin": 3493,
"end": 3540,
"name": "tag",
"source": 2,
"value": "84"
},
{
"begin": 3493,
"end": 3540,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3589,
"end": 3591,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 3584,
"end": 3587,
"name": "DUP6",
"source": 2
},
{
"begin": 3580,
"end": 3592,
"name": "ADD",
"source": 2
},
{
"begin": 3577,
"end": 3578,
"name": "PUSH",
"source": 2,
"value": "5"
},
{
"begin": 3573,
"end": 3593,
"name": "SHR",
"source": 2
},
{
"begin": 3567,
"end": 3571,
"name": "DUP3",
"source": 2
},
{
"begin": 3563,
"end": 3594,
"name": "ADD",
"source": 2
},
{
"begin": 3553,
"end": 3594,
"name": "SWAP2",
"source": 2
},
{
"begin": 3553,
"end": 3594,
"name": "POP",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "tag",
"source": 2,
"value": "85"
},
{
"begin": 3644,
"end": 3726,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3662,
"end": 3664,
"name": "DUP2",
"source": 2
},
{
"begin": 3655,
"end": 3660,
"name": "DUP2",
"source": 2
},
{
"begin": 3652,
"end": 3665,
"name": "LT",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "ISZERO",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "PUSH [tag]",
"source": 2,
"value": "87"
},
{
"begin": 3644,
"end": 3726,
"name": "JUMPI",
"source": 2
},
{
"begin": 3707,
"end": 3724,
"name": "DUP3",
"source": 2
},
{
"begin": 3707,
"end": 3724,
"name": "DUP2",
"source": 2
},
{
"begin": 3707,
"end": 3724,
"name": "SSTORE",
"source": 2
},
{
"begin": 3688,
"end": 3689,
"name": "PUSH",
"source": 2,
"value": "1"
},
{
"begin": 3677,
"end": 3690,
"name": "ADD",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "PUSH [tag]",
"source": 2,
"value": "85"
},
{
"begin": 3644,
"end": 3726,
"name": "JUMP",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "tag",
"source": 2,
"value": "87"
},
{
"begin": 3644,
"end": 3726,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3648,
"end": 3651,
"name": "POP",
"source": 2
},
{
"begin": 3648,
"end": 3651,
"name": "POP",
"source": 2
},
{
"begin": 3648,
"end": 3651,
"name": "POP",
"source": 2
},
{
"begin": 3288,
"end": 3736,
"name": "tag",
"source": 2,
"value": "83"
},
{
"begin": 3288,
"end": 3736,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3197,
"end": 3742,
"name": "POP",
"source": 2
},
{
"begin": 3197,
"end": 3742,
"name": "POP",
"source": 2
},
{
"begin": 3197,
"end": 3742,
"name": "POP",
"source": 2
},
{
"begin": 3197,
"end": 3742,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 3918,
"end": 5270,
"name": "tag",
"source": 2,
"value": "35"
},
{
"begin": 3918,
"end": 5270,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4044,
"end": 4047,
"name": "DUP2",
"source": 2
},
{
"begin": 4038,
"end": 4048,
"name": "MLOAD",
"source": 2
},
{
"begin": 4071,
"end": 4089,
"name": "PUSH",
"source": 2,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 4063,
"end": 4069,
"name": "DUP2",
"source": 2
},
{
"begin": 4060,
"end": 4090,
"name": "GT",
"source": 2
},
{
"begin": 4057,
"end": 4113,
"name": "ISZERO",
"source": 2
},
{
"begin": 4057,
"end": 4113,
"name": "PUSH [tag]",
"source": 2,
"value": "91"
},
{
"begin": 4057,
"end": 4113,
"name": "JUMPI",
"source": 2
},
{
"begin": 4093,
"end": 4111,
"name": "PUSH [tag]",
"source": 2,
"value": "91"
},
{
"begin": 4093,
"end": 4111,
"name": "PUSH [tag]",
"source": 2,
"value": "46"
},
{
"begin": 4093,
"end": 4111,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 4093,
"end": 4111,
"name": "tag",
"source": 2,
"value": "91"
},
{
"begin": 4093,
"end": 4111,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4122,
"end": 4219,
"name": "PUSH [tag]",
"source": 2,
"value": "92"
},
{
"begin": 4212,
"end": 4218,
"name": "DUP2",
"source": 2
},
{
"begin": 4172,
"end": 4210,
"name": "PUSH [tag]",
"source": 2,
"value": "93"
},
{
"begin": 4204,
"end": 4208,
"name": "DUP5",
"source": 2
},
{
"begin": 4198,
"end": 4209,
"name": "SLOAD",
"source": 2
},
{
"begin": 4172,
"end": 4210,
"name": "PUSH [tag]",
"source": 2,
"value": "41"
},
{
"begin": 4172,
"end": 4210,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 4172,
"end": 4210,
"name": "tag",
"source": 2,
"value": "93"
},
{
"begin": 4172,
"end": 4210,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4166,
"end": 4170,
"name": "DUP5",
"source": 2
},
{
"begin": 4122,
"end": 4219,
"name": "PUSH [tag]",
"source": 2,
"value": "50"
},
{
"begin": 4122,
"end": 4219,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 4122,
"end": 4219,
"name": "tag",
"source": 2,
"value": "92"
},
{
"begin": 4122,
"end": 4219,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4274,
"end": 4278,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 4274,
"end": 4278,
"name": "DUP1",
"source": 2
},
{
"begin": 4338,
"end": 4340,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 4327,
"end": 4341,
"name": "DUP4",
"source": 2
},
{
"begin": 4327,
"end": 4341,
"name": "GT",
"source": 2
},
{
"begin": 4355,
"end": 4356,
"name": "PUSH",
"source": 2,
"value": "1"
},
{
"begin": 4350,
"end": 5013,
"name": "DUP2",
"source": 2
},
{
"begin": 4350,
"end": 5013,
"name": "EQ",
"source": 2
},
{
"begin": 4350,
"end": 5013,
"name": "PUSH [tag]",
"source": 2,
"value": "95"
},
{
"begin": 4350,
"end": 5013,
"name": "JUMPI",
"source": 2
},
{
"begin": 5057,
"end": 5058,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 5074,
"end": 5080,
"name": "DUP5",
"source": 2
},
{
"begin": 5071,
"end": 5160,
"name": "ISZERO",
"source": 2
},
{
"begin": 5071,
"end": 5160,
"name": "PUSH [tag]",
"source": 2,
"value": "96"
},
{
"begin": 5071,
"end": 5160,
"name": "JUMPI",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 5126,
"end": 5145,
"name": "DUP6",
"source": 2
},
{
"begin": 5126,
"end": 5145,
"name": "DUP4",
"source": 2
},
{
"begin": 5126,
"end": 5145,
"name": "ADD",
"source": 2
},
{
"begin": 5120,
"end": 5146,
"name": "MLOAD",
"source": 2
},
{
"begin": 5071,
"end": 5160,
"name": "tag",
"source": 2,
"value": "96"
},
{
"begin": 5071,
"end": 5160,
"name": "JUMPDEST",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "0"
},
{
"begin": -1,
"end": -1,
"name": "NOT",
"source": -1
},
{
"begin": 3875,
"end": 3876,
"name": "PUSH",
"source": 2,
"value": "3"
},
{
"begin": 3871,
"end": 3882,
"name": "DUP7",
"source": 2
},
{
"begin": 3871,
"end": 3882,
"name": "SWAP1",
"source": 2
},
{
"begin": 3871,
"end": 3882,
"name": "SHL",
"source": 2
},
{
"begin": 3867,
"end": 3891,
"name": "SHR",
"source": 2
},
{
"begin": 3863,
"end": 3892,
"name": "NOT",
"source": 2
},
{
"begin": 3853,
"end": 3893,
"name": "AND",
"source": 2
},
{
"begin": 3899,
"end": 3900,
"name": "PUSH",
"source": 2,
"value": "1"
},
{
"begin": 3895,
"end": 3906,
"name": "DUP6",
"source": 2
},
{
"begin": 3895,
"end": 3906,
"name": "SWAP1",
"source": 2
},
{
"begin": 3895,
"end": 3906,
"name": "SHL",
"source": 2
},
{
"begin": 3850,
"end": 3907,
"name": "OR",
"source": 2
},
{
"begin": 5173,
"end": 5254,
"name": "DUP6",
"source": 2
},
{
"begin": 5173,
"end": 5254,
"name": "SSTORE",
"source": 2
},
{
"begin": 4320,
"end": 5264,
"name": "PUSH [tag]",
"source": 2,
"value": "87"
},
{
"begin": 4320,
"end": 5264,
"name": "JUMP",
"source": 2
},
{
"begin": 4350,
"end": 5013,
"name": "tag",
"source": 2,
"value": "95"
},
{
"begin": 4350,
"end": 5013,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3144,
"end": 3145,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 3137,
"end": 3151,
"name": "DUP6",
"source": 2
},
{
"begin": 3137,
"end": 3151,
"name": "DUP2",
"source": 2
},
{
"begin": 3137,
"end": 3151,
"name": "MSTORE",
"source": 2
},
{
"begin": 3181,
"end": 3185,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 3168,
"end": 3186,
"name": "DUP2",
"source": 2
},
{
"begin": 3168,
"end": 3186,
"name": "KECCAK256",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1F"
},
{
"begin": -1,
"end": -1,
"name": "NOT",
"source": -1
},
{
"begin": 4386,
"end": 4406,
"name": "DUP7",
"source": 2
},
{
"begin": 4386,
"end": 4406,
"name": "AND",
"source": 2
},
{
"begin": 4386,
"end": 4406,
"name": "SWAP2",
"source": 2
},
{
"begin": 4504,
"end": 4740,
"name": "tag",
"source": 2,
"value": "99"
},
{
"begin": 4504,
"end": 4740,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4518,
"end": 4525,
"name": "DUP3",
"source": 2
},
{
"begin": 4515,
"end": 4516,
"name": "DUP2",
"source": 2
},
{
"begin": 4512,
"end": 4526,
"name": "LT",
"source": 2
},
{
"begin": 4504,
"end": 4740,
"name": "ISZERO",
"source": 2
},
{
"begin": 4504,
"end": 4740,
"name": "PUSH [tag]",
"source": 2,
"value": "101"
},
{
"begin": 4504,
"end": 4740,
"name": "JUMPI",
"source": 2
},
{
"begin": 4607,
"end": 4626,
"name": "DUP9",
"source": 2
},
{
"begin": 4607,
"end": 4626,
"name": "DUP7",
"source": 2
},
{
"begin": 4607,
"end": 4626,
"name": "ADD",
"source": 2
},
{
"begin": 4601,
"end": 4627,
"name": "MLOAD",
"source": 2
},
{
"begin": 4586,
"end": 4628,
"name": "DUP3",
"source": 2
},
{
"begin": 4586,
"end": 4628,
"name": "SSTORE",
"source": 2
},
{
"begin": 4699,
"end": 4726,
"name": "SWAP5",
"source": 2
},
{
"begin": 4699,
"end": 4726,
"name": "DUP5",
"source": 2
},
{
"begin": 4699,
"end": 4726,
"name": "ADD",
"source": 2
},
{
"begin": 4699,
"end": 4726,
"name": "SWAP5",
"source": 2
},
{
"begin": 4667,
"end": 4668,
"name": "PUSH",
"source": 2,
"value": "1"
},
{
"begin": 4655,
"end": 4669,
"name": "SWAP1",
"source": 2
},
{
"begin": 4655,
"end": 4669,
"name": "SWAP2",
"source": 2
},
{
"begin": 4655,
"end": 4669,
"name": "ADD",
"source": 2
},
{
"begin": 4655,
"end": 4669,
"name": "SWAP1",
"source": 2
},
{
"begin": 4534,
"end": 4553,
"name": "DUP5",
"source": 2
},
{
"begin": 4534,
"end": 4553,
"name": "ADD",
"source": 2
},
{
"begin": 4504,
"end": 4740,
"name": "PUSH [tag]",
"source": 2,
"value": "99"
},
{
"begin": 4504,
"end": 4740,
"name": "JUMP",
"source": 2
},
{
"begin": 4504,
"end": 4740,
"name": "tag",
"source": 2,
"value": "101"
},
{
"begin": 4504,
"end": 4740,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4508,
"end": 4511,
"name": "POP",
"source": 2
},
{
"begin": 4768,
"end": 4774,
"name": "DUP6",
"source": 2
},
{
"begin": 4759,
"end": 4766,
"name": "DUP3",
"source": 2
},
{
"begin": 4756,
"end": 4775,
"name": "LT",
"source": 2
},
{
"begin": 4753,
"end": 4954,
"name": "ISZERO",
"source": 2
},
{
"begin": 4753,
"end": 4954,
"name": "PUSH [tag]",
"source": 2,
"value": "102"
},
{
"begin": 4753,
"end": 4954,
"name": "JUMPI",
"source": 2
},
{
"begin": 4829,
"end": 4848,
"name": "DUP8",
"source": 2
},
{
"begin": 4829,
"end": 4848,
"name": "DUP6",
"source": 2
},
{
"begin": 4829,
"end": 4848,
"name": "ADD",
"source": 2
},
{
"begin": 4823,
"end": 4849,
"name": "MLOAD",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "0"
},
{
"begin": -1,
"end": -1,
"name": "NOT",
"source": -1
},
{
"begin": 4912,
"end": 4913,
"name": "PUSH",
"source": 2,
"value": "3"
},
{
"begin": 4908,
"end": 4922,
"name": "DUP9",
"source": 2
},
{
"begin": 4908,
"end": 4922,
"name": "SWAP1",
"source": 2
},
{
"begin": 4908,
"end": 4922,
"name": "SHL",
"source": 2
},
{
"begin": 4924,
"end": 4927,
"name": "PUSH",
"source": 2,
"value": "F8"
},
{
"begin": 4904,
"end": 4928,
"name": "AND",
"source": 2
},
{
"begin": 4900,
"end": 4937,
"name": "SHR",
"source": 2
},
{
"begin": 4896,
"end": 4938,
"name": "NOT",
"source": 2
},
{
"begin": 4881,
"end": 4939,
"name": "AND",
"source": 2
},
{
"begin": 4866,
"end": 4940,
"name": "DUP2",
"source": 2
},
{
"begin": 4866,
"end": 4940,
"name": "SSTORE",
"source": 2
},
{
"begin": 4753,
"end": 4954,
"name": "tag",
"source": 2,
"value": "102"
},
{
"begin": 4753,
"end": 4954,
"name": "JUMPDEST",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 5000,
"end": 5001,
"name": "PUSH",
"source": 2,
"value": "1"
},
{
"begin": 4984,
"end": 4998,
"name": "SWAP1",
"source": 2
},
{
"begin": 4984,
"end": 4998,
"name": "DUP2",
"source": 2
},
{
"begin": 4984,
"end": 4998,
"name": "SHL",
"source": 2
},
{
"begin": 4980,
"end": 5002,
"name": "ADD",
"source": 2
},
{
"begin": 4967,
"end": 5003,
"name": "SWAP1",
"source": 2
},
{
"begin": 4967,
"end": 5003,
"name": "SSTORE",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 3918,
"end": 5270,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 5275,
"end": 5564,
"name": "tag",
"source": 2,
"value": "37"
},
{
"begin": 5275,
"end": 5564,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5406,
"end": 5409,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 5444,
"end": 5450,
"name": "DUP3",
"source": 2
},
{
"begin": 5438,
"end": 5451,
"name": "MLOAD",
"source": 2
},
{
"begin": 5460,
"end": 5526,
"name": "PUSH [tag]",
"source": 2,
"value": "104"
},
{
"begin": 5519,
"end": 5525,
"name": "DUP2",
"source": 2
},
{
"begin": 5514,
"end": 5517,
"name": "DUP5",
"source": 2
},
{
"begin": 5507,
"end": 5511,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 5499,
"end": 5505,
"name": "DUP8",
"source": 2
},
{
"begin": 5495,
"end": 5512,
"name": "ADD",
"source": 2
},
{
"begin": 5460,
"end": 5526,
"name": "PUSH [tag]",
"source": 2,
"value": "48"
},
{
"begin": 5460,
"end": 5526,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 5460,
"end": 5526,
"name": "tag",
"source": 2,
"value": "104"
},
{
"begin": 5460,
"end": 5526,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5542,
"end": 5558,
"name": "SWAP2",
"source": 2
},
{
"begin": 5542,
"end": 5558,
"name": "SWAP1",
"source": 2
},
{
"begin": 5542,
"end": 5558,
"name": "SWAP2",
"source": 2
},
{
"begin": 5542,
"end": 5558,
"name": "ADD",
"source": 2
},
{
"begin": 5542,
"end": 5558,
"name": "SWAP3",
"source": 2
},
{
"begin": 5275,
"end": 5564,
"name": "SWAP2",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 5275,
"end": 5564,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
}
]
}
},
"sourceList": [
"contracts/SimpleStorage.sol",
"contracts/SimpleStorageFactory.sol",
"#utility.yul"
]
},
"methodIdentifiers": {
"addPerson(string,uint256)": "6f760f41",
"nameToFavoriteNumber(string)": "8bab8dd5",
"people(uint256)": "9e7a13ad",
"retrieve()": "2e64cec1",
"store(uint256)": "6057361d"
}
},
"ewasm": {
"wasm": ""
},
"metadata": "{\"compiler\":{\"version\":\"0.8.18+commit.87f61d96\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_favoriteNumber\",\"type\":\"uint256\"}],\"name\":\"addPerson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"nameToFavoriteNumber\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"people\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"favoriteNumber\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"retrieve\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_favoriteNumber\",\"type\":\"uint256\"}],\"name\":\"store\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/SimpleStorage.sol\":\"SimpleStorage\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/SimpleStorage.sol\":{\"keccak256\":\"0xb53b01ae405157917107c1c9a5f40ef23f076b19fb17dcddedf5c272b2d16a34\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1a91ec569218ab8bc1ed98be8f721fa745667d84e189f44b2fd3ee4260bb030\",\"dweb:/ipfs/QmXpWT2mSvnweTrE6K2xawXoMe7nk8bQV7W6g8mUgAc9kM\"]}},\"version\":1}",
"storageLayout": {
"storage": [
{
"astId": 3,
"contract": "contracts/SimpleStorage.sol:SimpleStorage",
"label": "favoriteNumber",
"offset": 0,
"slot": "0",
"type": "t_uint256"
},
{
"astId": 12,
"contract": "contracts/SimpleStorage.sol:SimpleStorage",
"label": "people",
"offset": 0,
"slot": "1",
"type": "t_array(t_struct(People)8_storage)dyn_storage"
},
{
"astId": 16,
"contract": "contracts/SimpleStorage.sol:SimpleStorage",
"label": "nameToFavoriteNumber",
"offset": 0,
"slot": "2",
"type": "t_mapping(t_string_memory_ptr,t_uint256)"
}
],
"types": {
"t_array(t_struct(People)8_storage)dyn_storage": {
"base": "t_struct(People)8_storage",
"encoding": "dynamic_array",
"label": "struct SimpleStorage.People[]",
"numberOfBytes": "32"
},
"t_mapping(t_string_memory_ptr,t_uint256)": {
"encoding": "mapping",
"key": "t_string_memory_ptr",
"label": "mapping(string => uint256)",
"numberOfBytes": "32",
"value": "t_uint256"
},
"t_string_memory_ptr": {
"encoding": "bytes",
"label": "string",
"numberOfBytes": "32"
},
"t_string_storage": {
"encoding": "bytes",
"label": "string",
"numberOfBytes": "32"
},
"t_struct(People)8_storage": {
"encoding": "inplace",
"label": "struct SimpleStorage.People",
"members": [
{
"astId": 5,
"contract": "contracts/SimpleStorage.sol:SimpleStorage",
"label": "favoriteNumber",
"offset": 0,
"slot": "0",
"type": "t_uint256"
},
{
"astId": 7,
"contract": "contracts/SimpleStorage.sol:SimpleStorage",
"label": "name",
"offset": 0,
"slot": "1",
"type": "t_string_storage"
}
],
"numberOfBytes": "64"
},
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
}
}
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
}
},
"contracts/SimpleStorageFactory.sol": {
"StorageFactory": {
"abi": [
{
"inputs": [],
"name": "createSimpleStorageContract",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_simpleStorageIndex",
"type": "uint256"
}
],
"name": "sfGet",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_simpleStorageIndex",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_simpleStorageNumber",
"type": "uint256"
}
],
"name": "sfStore",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "simpleStorageArray",
"outputs": [
{
"internalType": "contract SimpleStorage",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/SimpleStorageFactory.sol\":90:660 contract StorageFactory {... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/SimpleStorageFactory.sol\":90:660 contract StorageFactory {... */\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 0x1563700f\n eq\n tag_3\n jumpi\n dup1\n 0x1dda6541\n eq\n tag_4\n jumpi\n dup1\n 0x64591bf1\n eq\n tag_5\n jumpi\n dup1\n 0xc5f19c20\n eq\n tag_6\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/SimpleStorageFactory.sol\":335:503 function sfStore(uint256 _simpleStorageIndex, uint256 _simpleStorageNumber) public {... */\n tag_3:\n tag_7\n tag_8\n calldatasize\n 0x04\n tag_9\n jump\t// in\n tag_8:\n tag_10\n jump\t// in\n tag_7:\n stop\n /* \"contracts/SimpleStorageFactory.sol\":169:329 function createSimpleStorageContract() public {... */\n tag_4:\n tag_7\n tag_12\n jump\t// in\n /* \"contracts/SimpleStorageFactory.sol\":121:162 SimpleStorage[] public simpleStorageArray */\n tag_5:\n tag_13\n tag_14\n calldatasize\n 0x04\n tag_15\n jump\t// in\n tag_14:\n tag_16\n jump\t// in\n tag_13:\n mload(0x40)\n sub(shl(0xa0, 0x01), 0x01)\n /* \"#utility.yul\":636:668 */\n swap1\n swap2\n and\n /* \"#utility.yul\":618:669 */\n dup2\n mstore\n /* \"#utility.yul\":606:608 */\n 0x20\n /* \"#utility.yul\":591:609 */\n add\n /* \"contracts/SimpleStorageFactory.sol\":121:162 SimpleStorage[] public simpleStorageArray */\n tag_17:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/SimpleStorageFactory.sol\":509:658 function sfGet(uint256 _simpleStorageIndex) public view returns (uint256) {... */\n tag_6:\n tag_19\n tag_20\n calldatasize\n 0x04\n tag_15\n jump\t// in\n tag_20:\n tag_21\n jump\t// in\n tag_19:\n mload(0x40)\n /* \"#utility.yul\":826:851 */\n swap1\n dup2\n mstore\n /* \"#utility.yul\":814:816 */\n 0x20\n /* \"#utility.yul\":799:817 */\n add\n /* \"contracts/SimpleStorageFactory.sol\":509:658 function sfGet(uint256 _simpleStorageIndex) public view returns (uint256) {... */\n tag_17\n /* \"#utility.yul\":680:857 */\n jump\n /* \"contracts/SimpleStorageFactory.sol\":335:503 function sfStore(uint256 _simpleStorageIndex, uint256 _simpleStorageNumber) public {... */\n tag_10:\n /* \"contracts/SimpleStorageFactory.sol\":429:447 simpleStorageArray */\n 0x00\n /* \"contracts/SimpleStorageFactory.sol\":448:467 _simpleStorageIndex */\n dup3\n /* \"contracts/SimpleStorageFactory.sol\":429:468 simpleStorageArray[_simpleStorageIndex] */\n dup2\n sload\n dup2\n lt\n tag_26\n jumpi\n tag_26\n tag_27\n jump\t// in\n tag_26:\n 0x00\n swap2\n dup3\n mstore\n 0x20\n swap1\n swap2\n keccak256\n add\n sload\n /* \"contracts/SimpleStorageFactory.sol\":429:496 simpleStorageArray[_simpleStorageIndex].store(_simpleStorageNumber) */\n mload(0x40)\n shl(0xe0, 0x6057361d)\n dup2\n mstore\n 0x04\n dup2\n add\n /* \"#utility.yul\":826:851 */\n dup4\n swap1\n mstore\n sub(shl(0xa0, 0x01), 0x01)\n /* \"contracts/SimpleStorageFactory.sol\":429:468 simpleStorageArray[_simpleStorageIndex] */\n swap1\n swap2\n and\n swap1\n /* \"contracts/SimpleStorageFactory.sol\":429:474 simpleStorageArray[_simpleStorageIndex].store */\n 0x6057361d\n swap1\n /* \"#utility.yul\":799:817 */\n 0x24\n add\n /* \"contracts/SimpleStorageFactory.sol\":429:496 simpleStorageArray[_simpleStorageIndex].store(_simpleStorageNumber) */\n 0x00\n mload(0x40)\n dup1\n dup4\n sub\n dup2\n 0x00\n dup8\n dup1\n extcodesize\n iszero\n dup1\n iszero\n tag_30\n jumpi\n 0x00\n dup1\n revert\n tag_30:\n pop\n gas\n call\n iszero\n dup1\n iszero\n tag_32\n jumpi\n returndatasize\n 0x00\n dup1\n returndatacopy\n revert(0x00, returndatasize)\n tag_32:\n pop\n pop\n pop\n pop\n /* \"contracts/SimpleStorageFactory.sol\":335:503 function sfStore(uint256 _simpleStorageIndex, uint256 _simpleStorageNumber) public {... */\n pop\n pop\n jump\t// out\n /* \"contracts/SimpleStorageFactory.sol\":169:329 function createSimpleStorageContract() public {... */\n tag_12:\n /* \"contracts/SimpleStorageFactory.sol\":225:252 SimpleStorage simpleStorage */\n 0x00\n /* \"contracts/SimpleStorageFactory.sol\":255:274 new SimpleStorage() */\n mload(0x40)\n tag_34\n swap1\n tag_35\n jump\t// in\n tag_34:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n 0x00\n create\n dup1\n iszero\n dup1\n iszero\n tag_36\n jumpi\n returndatasize\n 0x00\n dup1\n returndatacopy\n revert(0x00, returndatasize)\n tag_36:\n pop\n /* \"contracts/SimpleStorageFactory.sol\":284:302 simpleStorageArray */\n 0x00\n /* \"contracts/SimpleStorageFactory.sol\":284:322 simpleStorageArray.push(simpleStorage) */\n dup1\n sload\n 0x01\n dup2\n add\n dup3\n sstore\n swap1\n dup1\n mstore\n 0x290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563\n add\n dup1\n sload\n not(sub(shl(0xa0, 0x01), 0x01))\n and\n sub(shl(0xa0, 0x01), 0x01)\n swap3\n swap1\n swap3\n and\n swap2\n swap1\n swap2\n or\n swap1\n sstore\n pop\n /* \"contracts/SimpleStorageFactory.sol\":169:329 function createSimpleStorageContract() public {... */\n jump\t// out\n /* \"contracts/SimpleStorageFactory.sol\":121:162 SimpleStorage[] public simpleStorageArray */\n tag_16:\n 0x00\n dup2\n dup2\n sload\n dup2\n lt\n tag_38\n jumpi\n 0x00\n dup1\n revert\n tag_38:\n 0x00\n swap2\n dup3\n mstore\n 0x20\n swap1\n swap2\n keccak256\n add\n sload\n sub(shl(0xa0, 0x01), 0x01)\n and\n swap1\n pop\n dup2\n jump\t// out\n /* \"contracts/SimpleStorageFactory.sol\":509:658 function sfGet(uint256 _simpleStorageIndex) public view returns (uint256) {... */\n tag_21:\n /* \"contracts/SimpleStorageFactory.sol\":574:581 uint256 */\n 0x00\n /* \"contracts/SimpleStorageFactory.sol\":601:619 simpleStorageArray */\n dup1\n /* \"contracts/SimpleStorageFactory.sol\":620:639 _simpleStorageIndex */\n dup3\n /* \"contracts/SimpleStorageFactory.sol\":601:640 simpleStorageArray[_simpleStorageIndex] */\n dup2\n sload\n dup2\n lt\n tag_42\n jumpi\n tag_42\n tag_27\n jump\t// in\n tag_42:\n 0x00\n swap2\n dup3\n mstore\n 0x20\n swap2\n dup3\n swap1\n keccak256\n add\n sload\n /* \"contracts/SimpleStorageFactory.sol\":601:651 simpleStorageArray[_simpleStorageIndex].retrieve() */\n 0x40\n dup1\n mload\n shl(0xe0, 0x2e64cec1)\n dup2\n mstore\n swap1\n mload\n sub(shl(0xa0, 0x01), 0x01)\n /* \"contracts/SimpleStorageFactory.sol\":601:640 simpleStorageArray[_simpleStorageIndex] */\n swap1\n swap3\n and\n swap3\n /* \"contracts/SimpleStorageFactory.sol\":601:649 simpleStorageArray[_simpleStorageIndex].retrieve */\n 0x2e64cec1\n swap3\n /* \"contracts/SimpleStorageFactory.sol\":601:651 simpleStorageArray[_simpleStorageIndex].retrieve() */\n 0x04\n dup1\n dup5\n add\n swap4\n dup3\n swap1\n sub\n add\n dup2\n /* \"contracts/SimpleStorageFactory.sol\":601:640 simpleStorageArray[_simpleStorageIndex] */\n dup7\n /* \"contracts/SimpleStorageFactory.sol\":601:651 simpleStorageArray[_simpleStorageIndex].retrieve() */\n gas\n staticcall\n iszero\n dup1\n iszero\n tag_45\n jumpi\n returndatasize\n 0x00\n dup1\n returndatacopy\n revert(0x00, returndatasize)\n tag_45:\n pop\n pop\n pop\n pop\n mload(0x40)\n returndatasize\n not(0x1f)\n 0x1f\n dup3\n add\n and\n dup3\n add\n dup1\n 0x40\n mstore\n pop\n dup2\n add\n swap1\n tag_46\n swap2\n swap1\n tag_47\n jump\t// in\n tag_46:\n /* \"contracts/SimpleStorageFactory.sol\":594:651 return simpleStorageArray[_simpleStorageIndex].retrieve() */\n swap3\n /* \"contracts/SimpleStorageFactory.sol\":509:658 function sfGet(uint256 _simpleStorageIndex) public view returns (uint256) {... */\n swap2\n pop\n pop\n jump\t// out\n tag_35:\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n dup4\n codecopy\n add\n swap1\n jump\t// out\n /* \"#utility.yul\":14:262 */\n tag_9:\n /* \"#utility.yul\":82:88 */\n 0x00\n /* \"#utility.yul\":90:96 */\n dup1\n /* \"#utility.yul\":143:145 */\n 0x40\n /* \"#utility.yul\":131:140 */\n dup4\n /* \"#utility.yul\":122:129 */\n dup6\n /* \"#utility.yul\":118:141 */\n sub\n /* \"#utility.yul\":114:146 */\n slt\n /* \"#utility.yul\":111:163 */\n iszero\n tag_50\n jumpi\n /* \"#utility.yul\":159:160 */\n 0x00\n /* \"#utility.yul\":156:157 */\n dup1\n /* \"#utility.yul\":149:161 */\n revert\n /* \"#utility.yul\":111:163 */\n tag_50:\n pop\n pop\n /* \"#utility.yul\":182:205 */\n dup1\n calldataload\n swap3\n /* \"#utility.yul\":252:254 */\n 0x20\n /* \"#utility.yul\":237:255 */\n swap1\n swap2\n add\n /* \"#utility.yul\":224:256 */\n calldataload\n swap2\n pop\n /* \"#utility.yul\":14:262 */\n jump\t// out\n /* \"#utility.yul\":267:447 */\n tag_15:\n /* \"#utility.yul\":326:332 */\n 0x00\n /* \"#utility.yul\":379:381 */\n 0x20\n /* \"#utility.yul\":367:376 */\n dup3\n /* \"#utility.yul\":358:365 */\n dup5\n /* \"#utility.yul\":354:377 */\n sub\n /* \"#utility.yul\":350:382 */\n slt\n /* \"#utility.yul\":347:399 */\n iszero\n tag_52\n jumpi\n /* \"#utility.yul\":395:396 */\n 0x00\n /* \"#utility.yul\":392:393 */\n dup1\n /* \"#utility.yul\":385:397 */\n revert\n /* \"#utility.yul\":347:399 */\n tag_52:\n pop\n /* \"#utility.yul\":418:441 */\n calldataload\n swap2\n /* \"#utility.yul\":267:447 */\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":862:989 */\n tag_27:\n /* \"#utility.yul\":923:933 */\n 0x4e487b71\n /* \"#utility.yul\":918:921 */\n 0xe0\n /* \"#utility.yul\":914:934 */\n shl\n /* \"#utility.yul\":911:912 */\n 0x00\n /* \"#utility.yul\":904:935 */\n mstore\n /* \"#utility.yul\":954:958 */\n 0x32\n /* \"#utility.yul\":951:952 */\n 0x04\n /* \"#utility.yul\":944:959 */\n mstore\n /* \"#utility.yul\":978:982 */\n 0x24\n /* \"#utility.yul\":975:976 */\n 0x00\n /* \"#utility.yul\":968:983 */\n revert\n /* \"#utility.yul\":994:1178 */\n tag_47:\n /* \"#utility.yul\":1064:1070 */\n 0x00\n /* \"#utility.yul\":1117:1119 */\n 0x20\n /* \"#utility.yul\":1105:1114 */\n dup3\n /* \"#utility.yul\":1096:1103 */\n dup5\n /* \"#utility.yul\":1092:1115 */\n sub\n /* \"#utility.yul\":1088:1120 */\n slt\n /* \"#utility.yul\":1085:1137 */\n iszero\n tag_57\n jumpi\n /* \"#utility.yul\":1133:1134 */\n 0x00\n /* \"#utility.yul\":1130:1131 */\n dup1\n /* \"#utility.yul\":1123:1135 */\n revert\n /* \"#utility.yul\":1085:1137 */\n tag_57:\n pop\n /* \"#utility.yul\":1156:1172 */\n mload\n swap2\n /* \"#utility.yul\":994:1178 */\n swap1\n pop\n jump\t// out\n stop\n\n sub_0: assembly {\n /* \"contracts/SimpleStorage.sol\":56:796 contract SimpleStorage {... */\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 dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\n stop\n\n sub_0: assembly {\n /* \"contracts/SimpleStorage.sol\":56:796 contract SimpleStorage {... */\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 0x2e64cec1\n eq\n tag_3\n jumpi\n dup1\n 0x6057361d\n eq\n tag_4\n jumpi\n dup1\n 0x6f760f41\n eq\n tag_5\n jumpi\n dup1\n 0x8bab8dd5\n eq\n tag_6\n jumpi\n dup1\n 0x9e7a13ad\n eq\n tag_7\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/SimpleStorage.sol\":514:601 function retrieve() public view returns (uint256){... */\n tag_3:\n /* \"contracts/SimpleStorage.sol\":555:562 uint256 */\n 0x00\n /* \"contracts/SimpleStorage.sol\":580:594 favoriteNumber */\n sload\n /* \"contracts/SimpleStorage.sol\":514:601 function retrieve() public view returns (uint256){... */\n tag_8:\n mload(0x40)\n /* \"#utility.yul\":160:185 */\n swap1\n dup2\n mstore\n /* \"#utility.yul\":148:150 */\n 0x20\n /* \"#utility.yul\":133:151 */\n add\n /* \"contracts/SimpleStorage.sol\":514:601 function retrieve() public view returns (uint256){... */\n tag_10:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/SimpleStorage.sol\":412:508 function store(uint256 _favoriteNumber) public {... */\n tag_4:\n tag_12\n tag_13\n calldatasize\n 0x04\n tag_14\n jump\t// in\n tag_13:\n /* \"contracts/SimpleStorage.sol\":469:483 favoriteNumber */\n 0x00\n /* \"contracts/SimpleStorage.sol\":469:501 favoriteNumber = _favoriteNumber */\n sstore\n /* \"contracts/SimpleStorage.sol\":412:508 function store(uint256 _favoriteNumber) public {... */\n jump\n tag_12:\n stop\n /* \"contracts/SimpleStorage.sol\":607:794 function addPerson(string memory _name, uint256 _favoriteNumber) public {... */\n tag_5:\n tag_12\n tag_17\n calldatasize\n 0x04\n tag_18\n jump\t// in\n tag_17:\n tag_19\n jump\t// in\n /* \"contracts/SimpleStorage.sol\":351:405 mapping(string => uint256) public nameToFavoriteNumber */\n tag_6:\n tag_8\n tag_21\n calldatasize\n 0x04\n tag_22\n jump\t// in\n tag_21:\n dup1\n mload\n 0x20\n dup2\n dup4\n add\n dup2\n add\n dup1\n mload\n 0x02\n dup3\n mstore\n swap3\n dup3\n add\n swap2\n swap1\n swap4\n add\n keccak256\n swap2\n mstore\n sload\n dup2\n jump\n /* \"contracts/SimpleStorage.sol\":322:344 People[] public people */\n tag_7:\n tag_25\n tag_26\n calldatasize\n 0x04\n tag_14\n jump\t// in\n tag_26:\n tag_27\n jump\t// in\n tag_25:\n mload(0x40)\n tag_10\n swap3\n swap2\n swap1\n tag_29\n jump\t// in\n /* \"contracts/SimpleStorage.sol\":607:794 function addPerson(string memory _name, uint256 _favoriteNumber) public {... */\n tag_19:\n /* \"contracts/SimpleStorage.sol\":701:731 People(_favoriteNumber, _name) */\n 0x40\n dup1\n mload\n dup1\n dup3\n add\n swap1\n swap2\n mstore\n dup2\n dup2\n mstore\n 0x20\n dup2\n add\n dup4\n dup2\n mstore\n /* \"contracts/SimpleStorage.sol\":689:695 people */\n 0x01\n /* \"contracts/SimpleStorage.sol\":689:732 people.push(People(_favoriteNumber, _name)) */\n dup1\n sload\n dup1\n dup3\n add\n dup3\n sstore\n 0x00\n swap2\n swap1\n swap2\n mstore\n dup3\n mload\n 0x02\n swap1\n swap2\n mul\n 0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6\n dup2\n add\n swap2\n dup3\n sstore\n swap2\n mload\n swap1\n swap2\n 0xb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf7\n add\n swap1\n tag_34\n swap1\n dup3\n tag_35\n jump\t// in\n tag_34:\n pop\n pop\n pop\n /* \"contracts/SimpleStorage.sol\":772:787 _favoriteNumber */\n dup1\n /* \"contracts/SimpleStorage.sol\":742:762 nameToFavoriteNumber */\n 0x02\n /* \"contracts/SimpleStorage.sol\":763:768 _name */\n dup4\n /* \"contracts/SimpleStorage.sol\":742:769 nameToFavoriteNumber[_name] */\n mload(0x40)\n tag_36\n swap2\n swap1\n tag_37\n jump\t// in\n tag_36:\n swap1\n dup2\n mstore\n mload(0x40)\n swap1\n dup2\n swap1\n sub\n 0x20\n add\n swap1\n keccak256\n /* \"contracts/SimpleStorage.sol\":742:787 nameToFavoriteNumber[_name] = _favoriteNumber */\n sstore\n pop\n pop\n /* \"contracts/SimpleStorage.sol\":607:794 function addPerson(string memory _name, uint256 _favoriteNumber) public {... */\n jump\t// out\n /* \"contracts/SimpleStorage.sol\":322:344 People[] public people */\n tag_27:\n 0x01\n dup2\n dup2\n sload\n dup2\n lt\n tag_38\n jumpi\n 0x00\n dup1\n revert\n tag_38:\n 0x00\n swap2\n dup3\n mstore\n 0x20\n swap1\n swap2\n keccak256\n 0x02\n swap1\n swap2\n mul\n add\n dup1\n sload\n 0x01\n dup3\n add\n dup1\n sload\n swap2\n swap4\n pop\n swap1\n tag_40\n swap1\n tag_41\n jump\t// in\n tag_40:\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_42\n swap1\n tag_41\n jump\t// in\n tag_42:\n dup1\n iszero\n tag_43\n jumpi\n dup1\n 0x1f\n lt\n tag_44\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_43)\n tag_44:\n dup3\n add\n swap2\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n tag_45:\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_45\n jumpi\n dup3\n swap1\n sub\n 0x1f\n and\n dup3\n add\n swap2\n tag_43:\n pop\n pop\n pop\n pop\n pop\n swap1\n pop\n dup3\n jump\t// out\n /* \"#utility.yul\":196:376 */\n tag_14:\n /* \"#utility.yul\":255:261 */\n 0x00\n /* \"#utility.yul\":308:310 */\n 0x20\n /* \"#utility.yul\":296:305 */\n dup3\n /* \"#utility.yul\":287:294 */\n dup5\n /* \"#utility.yul\":283:306 */\n sub\n /* \"#utility.yul\":279:311 */\n slt\n /* \"#utility.yul\":276:328 */\n iszero\n tag_55\n jumpi\n /* \"#utility.yul\":324:325 */\n 0x00\n /* \"#utility.yul\":321:322 */\n dup1\n /* \"#utility.yul\":314:326 */\n revert\n /* \"#utility.yul\":276:328 */\n tag_55:\n pop\n /* \"#utility.yul\":347:370 */\n calldataload\n swap2\n /* \"#utility.yul\":196:376 */\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":381:508 */\n tag_46:\n /* \"#utility.yul\":442:452 */\n 0x4e487b71\n /* \"#utility.yul\":437:440 */\n 0xe0\n /* \"#utility.yul\":433:453 */\n shl\n /* \"#utility.yul\":430:431 */\n 0x00\n /* \"#utility.yul\":423:454 */\n mstore\n /* \"#utility.yul\":473:477 */\n 0x41\n /* \"#utility.yul\":470:471 */\n 0x04\n /* \"#utility.yul\":463:478 */\n mstore\n /* \"#utility.yul\":497:501 */\n 0x24\n /* \"#utility.yul\":494:495 */\n 0x00\n /* \"#utility.yul\":487:502 */\n revert\n /* \"#utility.yul\":513:1232 */\n tag_47:\n /* \"#utility.yul\":556:561 */\n 0x00\n /* \"#utility.yul\":609:612 */\n dup3\n /* \"#utility.yul\":602:606 */\n 0x1f\n /* \"#utility.yul\":594:600 */\n dup4\n /* \"#utility.yul\":590:607 */\n add\n /* \"#utility.yul\":586:613 */\n slt\n /* \"#utility.yul\":576:631 */\n tag_58\n jumpi\n /* \"#utility.yul\":627:628 */\n 0x00\n /* \"#utility.yul\":624:625 */\n dup1\n /* \"#utility.yul\":617:629 */\n revert\n /* \"#utility.yul\":576:631 */\n tag_58:\n /* \"#utility.yul\":663:669 */\n dup2\n /* \"#utility.yul\":650:670 */\n calldataload\n /* \"#utility.yul\":689:707 */\n 0xffffffffffffffff\n /* \"#utility.yul\":726:728 */\n dup1\n /* \"#utility.yul\":722:724 */\n dup3\n /* \"#utility.yul\":719:729 */\n gt\n /* \"#utility.yul\":716:752 */\n iszero\n tag_60\n jumpi\n /* \"#utility.yul\":732:750 */\n tag_60\n tag_46\n jump\t// in\n tag_60:\n /* \"#utility.yul\":807:809 */\n 0x40\n /* \"#utility.yul\":801:810 */\n mload\n /* \"#utility.yul\":775:777 */\n 0x1f\n /* \"#utility.yul\":861:874 */\n dup4\n add\n not(0x1f)\n /* \"#utility.yul\":857:879 */\n swap1\n dup2\n and\n /* \"#utility.yul\":881:883 */\n 0x3f\n /* \"#utility.yul\":853:884 */\n add\n /* \"#utility.yul\":849:889 */\n and\n /* \"#utility.yul\":837:890 */\n dup2\n add\n swap1\n /* \"#utility.yul\":905:923 */\n dup3\n dup3\n gt\n /* \"#utility.yul\":925:947 */\n dup2\n dup4\n lt\n /* \"#utility.yul\":902:948 */\n or\n /* \"#utility.yul\":899:971 */\n iszero\n tag_62\n jumpi\n /* \"#utility.yul\":951:969 */\n tag_62\n tag_46\n jump\t// in\n tag_62:\n /* \"#utility.yul\":991:1001 */\n dup2\n /* \"#utility.yul\":987:989 */\n 0x40\n /* \"#utility.yul\":980:1002 */\n mstore\n /* \"#utility.yul\":1026:1028 */\n dup4\n /* \"#utility.yul\":1018:1024 */\n dup2\n /* \"#utility.yul\":1011:1029 */\n mstore\n /* \"#utility.yul\":1072:1075 */\n dup7\n /* \"#utility.yul\":1065:1069 */\n 0x20\n /* \"#utility.yul\":1060:1062 */\n dup6\n /* \"#utility.yul\":1052:1058 */\n dup9\n /* \"#utility.yul\":1048:1063 */\n add\n /* \"#utility.yul\":1044:1070 */\n add\n /* \"#utility.yul\":1041:1076 */\n gt\n /* \"#utility.yul\":1038:1093 */\n iszero\n tag_63\n jumpi\n /* \"#utility.yul\":1089:1090 */\n 0x00\n /* \"#utility.yul\":1086:1087 */\n dup1\n /* \"#utility.yul\":1079:1091 */\n revert\n /* \"#utility.yul\":1038:1093 */\n tag_63:\n /* \"#utility.yul\":1153:1155 */\n dup4\n /* \"#utility.yul\":1146:1150 */\n 0x20\n /* \"#utility.yul\":1138:1144 */\n dup8\n /* \"#utility.yul\":1134:1151 */\n add\n /* \"#utility.yul\":1127:1131 */\n 0x20\n /* \"#utility.yul\":1119:1125 */\n dup4\n /* \"#utility.yul\":1115:1132 */\n add\n /* \"#utility.yul\":1102:1156 */\n calldatacopy\n /* \"#utility.yul\":1200:1201 */\n 0x00\n /* \"#utility.yul\":1193:1197 */\n 0x20\n /* \"#utility.yul\":1188:1190 */\n dup6\n /* \"#utility.yul\":1180:1186 */\n dup4\n /* \"#utility.yul\":1176:1191 */\n add\n /* \"#utility.yul\":1172:1198 */\n add\n /* \"#utility.yul\":1165:1202 */\n mstore\n /* \"#utility.yul\":1220:1226 */\n dup1\n /* \"#utility.yul\":1211:1226 */\n swap5\n pop\n pop\n pop\n pop\n pop\n /* \"#utility.yul\":513:1232 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1237:1627 */\n tag_18:\n /* \"#utility.yul\":1315:1321 */\n 0x00\n /* \"#utility.yul\":1323:1329 */\n dup1\n /* \"#utility.yul\":1376:1378 */\n 0x40\n /* \"#utility.yul\":1364:1373 */\n dup4\n /* \"#utility.yul\":1355:1362 */\n dup6\n /* \"#utility.yul\":1351:1374 */\n sub\n /* \"#utility.yul\":1347:1379 */\n slt\n /* \"#utility.yul\":1344:1396 */\n iszero\n tag_65\n jumpi\n /* \"#utility.yul\":1392:1393 */\n 0x00\n /* \"#utility.yul\":1389:1390 */\n dup1\n /* \"#utility.yul\":1382:1394 */\n revert\n /* \"#utility.yul\":1344:1396 */\n tag_65:\n /* \"#utility.yul\":1432:1441 */\n dup3\n /* \"#utility.yul\":1419:1442 */\n calldataload\n /* \"#utility.yul\":1465:1483 */\n 0xffffffffffffffff\n /* \"#utility.yul\":1457:1463 */\n dup2\n /* \"#utility.yul\":1454:1484 */\n gt\n /* \"#utility.yul\":1451:1501 */\n iszero\n tag_66\n jumpi\n /* \"#utility.yul\":1497:1498 */\n 0x00\n /* \"#utility.yul\":1494:1495 */\n dup1\n /* \"#utility.yul\":1487:1499 */\n revert\n /* \"#utility.yul\":1451:1501 */\n tag_66:\n /* \"#utility.yul\":1520:1570 */\n tag_67\n /* \"#utility.yul\":1562:1569 */\n dup6\n /* \"#utility.yul\":1553:1559 */\n dup3\n /* \"#utility.yul\":1542:1551 */\n dup7\n /* \"#utility.yul\":1538:1560 */\n add\n /* \"#utility.yul\":1520:1570 */\n tag_47\n jump\t// in\n tag_67:\n /* \"#utility.yul\":1510:1570 */\n swap6\n /* \"#utility.yul\":1617:1619 */\n 0x20\n /* \"#utility.yul\":1602:1620 */\n swap5\n swap1\n swap5\n add\n /* \"#utility.yul\":1589:1621 */\n calldataload\n swap5\n pop\n pop\n pop\n pop\n /* \"#utility.yul\":1237:1627 */\n jump\t// out\n /* \"#utility.yul\":1632:1954 */\n tag_22:\n /* \"#utility.yul\":1701:1707 */\n 0x00\n /* \"#utility.yul\":1754:1756 */\n 0x20\n /* \"#utility.yul\":1742:1751 */\n dup3\n /* \"#utility.yul\":1733:1740 */\n dup5\n /* \"#utility.yul\":1729:1752 */\n sub\n /* \"#utility.yul\":1725:1757 */\n slt\n /* \"#utility.yul\":1722:1774 */\n iszero\n tag_69\n jumpi\n /* \"#utility.yul\":1770:1771 */\n 0x00\n /* \"#utility.yul\":1767:1768 */\n dup1\n /* \"#utility.yul\":1760:1772 */\n revert\n /* \"#utility.yul\":1722:1774 */\n tag_69:\n /* \"#utility.yul\":1810:1819 */\n dup2\n /* \"#utility.yul\":1797:1820 */\n calldataload\n /* \"#utility.yul\":1843:1861 */\n 0xffffffffffffffff\n /* \"#utility.yul\":1835:1841 */\n dup2\n /* \"#utility.yul\":1832:1862 */\n gt\n /* \"#utility.yul\":1829:1879 */\n iszero\n tag_70\n jumpi\n /* \"#utility.yul\":1875:1876 */\n 0x00\n /* \"#utility.yul\":1872:1873 */\n dup1\n /* \"#utility.yul\":1865:1877 */\n revert\n /* \"#utility.yul\":1829:1879 */\n tag_70:\n /* \"#utility.yul\":1898:1948 */\n tag_71\n /* \"#utility.yul\":1940:1947 */\n dup5\n /* \"#utility.yul\":1931:1937 */\n dup3\n /* \"#utility.yul\":1920:1929 */\n dup6\n /* \"#utility.yul\":1916:1938 */\n add\n /* \"#utility.yul\":1898:1948 */\n tag_47\n jump\t// in\n tag_71:\n /* \"#utility.yul\":1888:1948 */\n swap5\n /* \"#utility.yul\":1632:1954 */\n swap4\n pop\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1959:2209 */\n tag_48:\n /* \"#utility.yul\":2044:2045 */\n 0x00\n /* \"#utility.yul\":2054:2167 */\n tag_73:\n /* \"#utility.yul\":2068:2074 */\n dup4\n /* \"#utility.yul\":2065:2066 */\n dup2\n /* \"#utility.yul\":2062:2075 */\n lt\n /* \"#utility.yul\":2054:2167 */\n iszero\n tag_75\n jumpi\n /* \"#utility.yul\":2144:2155 */\n dup2\n dup2\n add\n /* \"#utility.yul\":2138:2156 */\n mload\n /* \"#utility.yul\":2125:2136 */\n dup4\n dup3\n add\n /* \"#utility.yul\":2118:2157 */\n mstore\n /* \"#utility.yul\":2090:2092 */\n 0x20\n /* \"#utility.yul\":2083:2093 */\n add\n /* \"#utility.yul\":2054:2167 */\n jump(tag_73)\n tag_75:\n pop\n pop\n /* \"#utility.yul\":2201:2202 */\n 0x00\n /* \"#utility.yul\":2183:2199 */\n swap2\n add\n /* \"#utility.yul\":2176:2203 */\n mstore\n /* \"#utility.yul\":1959:2209 */\n jump\t// out\n /* \"#utility.yul\":2214:2681 */\n tag_29:\n /* \"#utility.yul\":2391:2397 */\n dup3\n /* \"#utility.yul\":2380:2389 */\n dup2\n /* \"#utility.yul\":2373:2398 */\n mstore\n /* \"#utility.yul\":2434:2436 */\n 0x40\n /* \"#utility.yul\":2429:2431 */\n 0x20\n /* \"#utility.yul\":2418:2427 */\n dup3\n /* \"#utility.yul\":2414:2432 */\n add\n /* \"#utility.yul\":2407:2437 */\n mstore\n /* \"#utility.yul\":2354:2358 */\n 0x00\n /* \"#utility.yul\":2466:2472 */\n dup3\n /* \"#utility.yul\":2460:2473 */\n mload\n /* \"#utility.yul\":2509:2515 */\n dup1\n /* \"#utility.yul\":2504:2506 */\n 0x40\n /* \"#utility.yul\":2493:2502 */\n dup5\n /* \"#utility.yul\":2489:2507 */\n add\n /* \"#utility.yul\":2482:2516 */\n mstore\n /* \"#utility.yul\":2525:2604 */\n tag_77\n /* \"#utility.yul\":2597:2603 */\n dup2\n /* \"#utility.yul\":2592:2594 */\n 0x60\n /* \"#utility.yul\":2581:2590 */\n dup6\n /* \"#utility.yul\":2577:2595 */\n add\n /* \"#utility.yul\":2572:2574 */\n 0x20\n /* \"#utility.yul\":2564:2570 */\n dup8\n /* \"#utility.yul\":2560:2575 */\n add\n /* \"#utility.yul\":2525:2604 */\n tag_48\n jump\t// in\n tag_77:\n /* \"#utility.yul\":2665:2667 */\n 0x1f\n /* \"#utility.yul\":2644:2659 */\n add\n not(0x1f)\n /* \"#utility.yul\":2640:2669 */\n and\n /* \"#utility.yul\":2625:2670 */\n swap2\n swap1\n swap2\n add\n /* \"#utility.yul\":2672:2674 */\n 0x60\n /* \"#utility.yul\":2621:2675 */\n add\n swap4\n /* \"#utility.yul\":2214:2681 */\n swap3\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2686:3066 */\n tag_41:\n /* \"#utility.yul\":2765:2766 */\n 0x01\n /* \"#utility.yul\":2761:2773 */\n dup2\n dup2\n shr\n swap1\n /* \"#utility.yul\":2808:2820 */\n dup3\n and\n dup1\n /* \"#utility.yul\":2829:2890 */\n tag_79\n jumpi\n /* \"#utility.yul\":2883:2887 */\n 0x7f\n /* \"#utility.yul\":2875:2881 */\n dup3\n /* \"#utility.yul\":2871:2888 */\n and\n /* \"#utility.yul\":2861:2888 */\n swap2\n pop\n /* \"#utility.yul\":2829:2890 */\n tag_79:\n /* \"#utility.yul\":2936:2938 */\n 0x20\n /* \"#utility.yul\":2928:2934 */\n dup3\n /* \"#utility.yul\":2925:2939 */\n lt\n /* \"#utility.yul\":2905:2923 */\n dup2\n /* \"#utility.yul\":2902:2940 */\n sub\n /* \"#utility.yul\":2899:3060 */\n tag_80\n jumpi\n /* \"#utility.yul\":2982:2992 */\n 0x4e487b71\n /* \"#utility.yul\":2977:2980 */\n 0xe0\n /* \"#utility.yul\":2973:2993 */\n shl\n /* \"#utility.yul\":2970:2971 */\n 0x00\n /* \"#utility.yul\":2963:2994 */\n mstore\n /* \"#utility.yul\":3017:3021 */\n 0x22\n /* \"#utility.yul\":3014:3015 */\n 0x04\n /* \"#utility.yul\":3007:3022 */\n mstore\n /* \"#utility.yul\":3045:3049 */\n 0x24\n /* \"#utility.yul\":3042:3043 */\n 0x00\n /* \"#utility.yul\":3035:3050 */\n revert\n /* \"#utility.yul\":2899:3060 */\n tag_80:\n pop\n /* \"#utility.yul\":2686:3066 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3197:3742 */\n tag_50:\n /* \"#utility.yul\":3299:3301 */\n 0x1f\n /* \"#utility.yul\":3294:3297 */\n dup3\n /* \"#utility.yul\":3291:3302 */\n gt\n /* \"#utility.yul\":3288:3736 */\n iszero\n tag_83\n jumpi\n /* \"#utility.yul\":3335:3336 */\n 0x00\n /* \"#utility.yul\":3360:3365 */\n dup2\n /* \"#utility.yul\":3356:3358 */\n dup2\n /* \"#utility.yul\":3349:3366 */\n mstore\n /* \"#utility.yul\":3405:3409 */\n 0x20\n /* \"#utility.yul\":3401:3403 */\n dup2\n /* \"#utility.yul\":3391:3410 */\n keccak256\n /* \"#utility.yul\":3475:3477 */\n 0x1f\n /* \"#utility.yul\":3463:3473 */\n dup6\n /* \"#utility.yul\":3459:3478 */\n add\n /* \"#utility.yul\":3456:3457 */\n 0x05\n /* \"#utility.yul\":3452:3479 */\n shr\n /* \"#utility.yul\":3446:3450 */\n dup2\n /* \"#utility.yul\":3442:3480 */\n add\n /* \"#utility.yul\":3511:3515 */\n 0x20\n /* \"#utility.yul\":3499:3509 */\n dup7\n /* \"#utility.yul\":3496:3516 */\n lt\n /* \"#utility.yul\":3493:3540 */\n iszero\n tag_84\n jumpi\n pop\n /* \"#utility.yul\":3534:3538 */\n dup1\n /* \"#utility.yul\":3493:3540 */\n tag_84:\n /* \"#utility.yul\":3589:3591 */\n 0x1f\n /* \"#utility.yul\":3584:3587 */\n dup6\n /* \"#utility.yul\":3580:3592 */\n add\n /* \"#utility.yul\":3577:3578 */\n 0x05\n /* \"#utility.yul\":3573:3593 */\n shr\n /* \"#utility.yul\":3567:3571 */\n dup3\n /* \"#utility.yul\":3563:3594 */\n add\n /* \"#utility.yul\":3553:3594 */\n swap2\n pop\n /* \"#utility.yul\":3644:3726 */\n tag_85:\n /* \"#utility.yul\":3662:3664 */\n dup2\n /* \"#utility.yul\":3655:3660 */\n dup2\n /* \"#utility.yul\":3652:3665 */\n lt\n /* \"#utility.yul\":3644:3726 */\n iszero\n tag_87\n jumpi\n /* \"#utility.yul\":3707:3724 */\n dup3\n dup2\n sstore\n /* \"#utility.yul\":3688:3689 */\n 0x01\n /* \"#utility.yul\":3677:3690 */\n add\n /* \"#utility.yul\":3644:3726 */\n jump(tag_85)\n tag_87:\n /* \"#utility.yul\":3648:3651 */\n pop\n pop\n pop\n /* \"#utility.yul\":3288:3736 */\n tag_83:\n /* \"#utility.yul\":3197:3742 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3918:5270 */\n tag_35:\n /* \"#utility.yul\":4044:4047 */\n dup2\n /* \"#utility.yul\":4038:4048 */\n mload\n /* \"#utility.yul\":4071:4089 */\n 0xffffffffffffffff\n /* \"#utility.yul\":4063:4069 */\n dup2\n /* \"#utility.yul\":4060:4090 */\n gt\n /* \"#utility.yul\":4057:4113 */\n iszero\n tag_91\n jumpi\n /* \"#utility.yul\":4093:4111 */\n tag_91\n tag_46\n jump\t// in\n tag_91:\n /* \"#utility.yul\":4122:4219 */\n tag_92\n /* \"#utility.yul\":4212:4218 */\n dup2\n /* \"#utility.yul\":4172:4210 */\n tag_93\n /* \"#utility.yul\":4204:4208 */\n dup5\n /* \"#utility.yul\":4198:4209 */\n sload\n /* \"#utility.yul\":4172:4210 */\n tag_41\n jump\t// in\n tag_93:\n /* \"#utility.yul\":4166:4170 */\n dup5\n /* \"#utility.yul\":4122:4219 */\n tag_50\n jump\t// in\n tag_92:\n /* \"#utility.yul\":4274:4278 */\n 0x20\n dup1\n /* \"#utility.yul\":4338:4340 */\n 0x1f\n /* \"#utility.yul\":4327:4341 */\n dup4\n gt\n /* \"#utility.yul\":4355:4356 */\n 0x01\n /* \"#utility.yul\":4350:5013 */\n dup2\n eq\n tag_95\n jumpi\n /* \"#utility.yul\":5057:5058 */\n 0x00\n /* \"#utility.yul\":5074:5080 */\n dup5\n /* \"#utility.yul\":5071:5160 */\n iszero\n tag_96\n jumpi\n pop\n /* \"#utility.yul\":5126:5145 */\n dup6\n dup4\n add\n /* \"#utility.yul\":5120:5146 */\n mload\n /* \"#utility.yul\":5071:5160 */\n tag_96:\n not(0x00)\n /* \"#utility.yul\":3875:3876 */\n 0x03\n /* \"#utility.yul\":3871:3882 */\n dup7\n swap1\n shl\n /* \"#utility.yul\":3867:3891 */\n shr\n /* \"#utility.yul\":3863:3892 */\n not\n /* \"#utility.yul\":3853:3893 */\n and\n /* \"#utility.yul\":3899:3900 */\n 0x01\n /* \"#utility.yul\":3895:3906 */\n dup6\n swap1\n shl\n /* \"#utility.yul\":3850:3907 */\n or\n /* \"#utility.yul\":5173:5254 */\n dup6\n sstore\n /* \"#utility.yul\":4320:5264 */\n jump(tag_87)\n /* \"#utility.yul\":4350:5013 */\n tag_95:\n /* \"#utility.yul\":3144:3145 */\n 0x00\n /* \"#utility.yul\":3137:3151 */\n dup6\n dup2\n mstore\n /* \"#utility.yul\":3181:3185 */\n 0x20\n /* \"#utility.yul\":3168:3186 */\n dup2\n keccak256\n not(0x1f)\n /* \"#utility.yul\":4386:4406 */\n dup7\n and\n swap2\n /* \"#utility.yul\":4504:4740 */\n tag_99:\n /* \"#utility.yul\":4518:4525 */\n dup3\n /* \"#utility.yul\":4515:4516 */\n dup2\n /* \"#utility.yul\":4512:4526 */\n lt\n /* \"#utility.yul\":4504:4740 */\n iszero\n tag_101\n jumpi\n /* \"#utility.yul\":4607:4626 */\n dup9\n dup7\n add\n /* \"#utility.yul\":4601:4627 */\n mload\n /* \"#utility.yul\":4586:4628 */\n dup3\n sstore\n /* \"#utility.yul\":4699:4726 */\n swap5\n dup5\n add\n swap5\n /* \"#utility.yul\":4667:4668 */\n 0x01\n /* \"#utility.yul\":4655:4669 */\n swap1\n swap2\n add\n swap1\n /* \"#utility.yul\":4534:4553 */\n dup5\n add\n /* \"#utility.yul\":4504:4740 */\n jump(tag_99)\n tag_101:\n /* \"#utility.yul\":4508:4511 */\n pop\n /* \"#utility.yul\":4768:4774 */\n dup6\n /* \"#utility.yul\":4759:4766 */\n dup3\n /* \"#utility.yul\":4756:4775 */\n lt\n /* \"#utility.yul\":4753:4954 */\n iszero\n tag_102\n jumpi\n /* \"#utility.yul\":4829:4848 */\n dup8\n dup6\n add\n /* \"#utility.yul\":4823:4849 */\n mload\n not(0x00)\n /* \"#utility.yul\":4912:4913 */\n 0x03\n /* \"#utility.yul\":4908:4922 */\n dup9\n swap1\n shl\n /* \"#utility.yul\":4924:4927 */\n 0xf8\n /* \"#utility.yul\":4904:4928 */\n and\n /* \"#utility.yul\":4900:4937 */\n shr\n /* \"#utility.yul\":4896:4938 */\n not\n /* \"#utility.yul\":4881:4939 */\n and\n /* \"#utility.yul\":4866:4940 */\n dup2\n sstore\n /* \"#utility.yul\":4753:4954 */\n tag_102:\n pop\n pop\n pop\n pop\n pop\n /* \"#utility.yul\":5000:5001 */\n 0x01\n /* \"#utility.yul\":4984:4998 */\n swap1\n dup2\n shl\n /* \"#utility.yul\":4980:5002 */\n add\n /* \"#utility.yul\":4967:5003 */\n swap1\n sstore\n pop\n /* \"#utility.yul\":3918:5270 */\n jump\t// out\n /* \"#utility.yul\":5275:5564 */\n tag_37:\n /* \"#utility.yul\":5406:5409 */\n 0x00\n /* \"#utility.yul\":5444:5450 */\n dup3\n /* \"#utility.yul\":5438:5451 */\n mload\n /* \"#utility.yul\":5460:5526 */\n tag_104\n /* \"#utility.yul\":5519:5525 */\n dup2\n /* \"#utility.yul\":5514:5517 */\n dup5\n /* \"#utility.yul\":5507:5511 */\n 0x20\n /* \"#utility.yul\":5499:5505 */\n dup8\n /* \"#utility.yul\":5495:5512 */\n add\n /* \"#utility.yul\":5460:5526 */\n tag_48\n jump\t// in\n tag_104:\n /* \"#utility.yul\":5542:5558 */\n swap2\n swap1\n swap2\n add\n swap3\n /* \"#utility.yul\":5275:5564 */\n swap2\n pop\n pop\n jump\t// out\n\n auxdata: 0xa2646970667358221220e165745f2380f5d82cd26db642287ff31544d61b26d4ccb6eeaba881d8ae431b64736f6c63430008120033\n }\n }\n\n auxdata: 0xa26469706673582212204f8831b6d6db7382d10bb374b1790f557698d896b01dd4fd10ad6d02936e911364736f6c63430008120033\n}\n",
"bytecode": {
"functionDebugData": {},
"generatedSources": [],
"linkReferences": {},
"object": "608060405234801561001057600080fd5b506108ba806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631563700f146100515780631dda65411461006657806364591bf11461006e578063c5f19c201461009e575b600080fd5b61006461005f36600461027b565b6100bf565b005b61006461013d565b61008161007c36600461029d565b6101b8565b6040516001600160a01b0390911681526020015b60405180910390f35b6100b16100ac36600461029d565b6101e2565b604051908152602001610095565b600082815481106100d2576100d26102b6565b600091825260209091200154604051636057361d60e01b8152600481018390526001600160a01b0390911690636057361d90602401600060405180830381600087803b15801561012157600080fd5b505af1158015610135573d6000803e3d6000fd5b505050505050565b600060405161014b9061026e565b604051809103906000f080158015610167573d6000803e3d6000fd5b50600080546001810182559080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b039290921691909117905550565b600081815481106101c857600080fd5b6000918252602090912001546001600160a01b0316905081565b60008082815481106101f6576101f66102b6565b6000918252602091829020015460408051632e64cec160e01b815290516001600160a01b0390921692632e64cec1926004808401938290030181865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061026891906102cc565b92915050565b61059f806102e683390190565b6000806040838503121561028e57600080fd5b50508035926020909101359150565b6000602082840312156102af57600080fd5b5035919050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156102de57600080fd5b505191905056fe608060405234801561001057600080fd5b5061057f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80632e64cec11461005c5780636057361d146100735780636f760f41146100885780638bab8dd51461009b5780639e7a13ad146100c6575b600080fd5b6000545b6040519081526020015b60405180910390f35b610086610081366004610248565b600055565b005b610086610096366004610304565b6100e7565b6100606100a9366004610349565b805160208183018101805160028252928201919093012091525481565b6100d96100d4366004610248565b610190565b60405161006a9291906103aa565b6040805180820190915281815260208101838152600180548082018255600091909152825160029091027fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf68101918255915190917fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf70190610168908261046d565b5050508060028360405161017c919061052d565b908152604051908190036020019020555050565b600181815481106101a057600080fd5b600091825260209091206002909102018054600182018054919350906101c5906103e4565b80601f01602080910402602001604051908101604052809291908181526020018280546101f1906103e4565b801561023e5780601f106102135761010080835404028352916020019161023e565b820191906000526020600020905b81548152906001019060200180831161022157829003601f168201915b5050505050905082565b60006020828403121561025a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261028857600080fd5b813567ffffffffffffffff808211156102a3576102a3610261565b604051601f8301601f19908116603f011681019082821181831017156102cb576102cb610261565b816040528381528660208588010111156102e457600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561031757600080fd5b823567ffffffffffffffff81111561032e57600080fd5b61033a85828601610277565b95602094909401359450505050565b60006020828403121561035b57600080fd5b813567ffffffffffffffff81111561037257600080fd5b61037e84828501610277565b949350505050565b60005b838110156103a1578181015183820152602001610389565b50506000910152565b82815260406020820152600082518060408401526103cf816060850160208701610386565b601f01601f1916919091016060019392505050565b600181811c908216806103f857607f821691505b60208210810361041857634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561046857600081815260208120601f850160051c810160208610156104455750805b601f850160051c820191505b8181101561046457828155600101610451565b5050505b505050565b815167ffffffffffffffff81111561048757610487610261565b61049b8161049584546103e4565b8461041e565b602080601f8311600181146104d057600084156104b85750858301515b600019600386901b1c1916600185901b178555610464565b600085815260208120601f198616915b828110156104ff578886015182559484019460019091019084016104e0565b508582101561051d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000825161053f818460208701610386565b919091019291505056fea2646970667358221220e165745f2380f5d82cd26db642287ff31544d61b26d4ccb6eeaba881d8ae431b64736f6c63430008120033a26469706673582212204f8831b6d6db7382d10bb374b1790f557698d896b01dd4fd10ad6d02936e911364736f6c63430008120033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x8BA DUP1 PUSH2 0x20 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 0x1563700F EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x1DDA6541 EQ PUSH2 0x66 JUMPI DUP1 PUSH4 0x64591BF1 EQ PUSH2 0x6E JUMPI DUP1 PUSH4 0xC5F19C20 EQ PUSH2 0x9E JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x64 PUSH2 0x5F CALLDATASIZE PUSH1 0x4 PUSH2 0x27B JUMP JUMPDEST PUSH2 0xBF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x64 PUSH2 0x13D JUMP JUMPDEST PUSH2 0x81 PUSH2 0x7C CALLDATASIZE PUSH1 0x4 PUSH2 0x29D JUMP JUMPDEST PUSH2 0x1B8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xB1 PUSH2 0xAC CALLDATASIZE PUSH1 0x4 PUSH2 0x29D JUMP JUMPDEST PUSH2 0x1E2 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x95 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0xD2 JUMPI PUSH2 0xD2 PUSH2 0x2B6 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP1 SWAP2 KECCAK256 ADD SLOAD PUSH1 0x40 MLOAD PUSH4 0x6057361D PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 DUP2 ADD DUP4 SWAP1 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND SWAP1 PUSH4 0x6057361D SWAP1 PUSH1 0x24 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x121 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x135 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD PUSH2 0x14B SWAP1 PUSH2 0x26E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 PUSH1 0x0 CREATE DUP1 ISZERO DUP1 ISZERO PUSH2 0x167 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP1 MSTORE PUSH32 0x290DECD9548B62A8D60345A988386FC84BA6BC95484008F6362F93160EF3E563 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x1C8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP1 SWAP2 KECCAK256 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND SWAP1 POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x1F6 JUMPI PUSH2 0x1F6 PUSH2 0x2B6 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP2 DUP3 SWAP1 KECCAK256 ADD SLOAD PUSH1 0x40 DUP1 MLOAD PUSH4 0x2E64CEC1 PUSH1 0xE0 SHL DUP2 MSTORE SWAP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP3 PUSH4 0x2E64CEC1 SWAP3 PUSH1 0x4 DUP1 DUP5 ADD SWAP4 DUP3 SWAP1 SUB ADD DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x244 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x268 SWAP2 SWAP1 PUSH2 0x2CC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x59F DUP1 PUSH2 0x2E6 DUP4 CODECOPY ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x28E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP DUP1 CALLDATALOAD SWAP3 PUSH1 0x20 SWAP1 SWAP2 ADD CALLDATALOAD SWAP2 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2DE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x57F DUP1 PUSH2 0x20 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 0x57 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x2E64CEC1 EQ PUSH2 0x5C JUMPI DUP1 PUSH4 0x6057361D EQ PUSH2 0x73 JUMPI DUP1 PUSH4 0x6F760F41 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0x8BAB8DD5 EQ PUSH2 0x9B JUMPI DUP1 PUSH4 0x9E7A13AD EQ PUSH2 0xC6 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x86 PUSH2 0x81 CALLDATASIZE PUSH1 0x4 PUSH2 0x248 JUMP JUMPDEST PUSH1 0x0 SSTORE JUMP JUMPDEST STOP JUMPDEST PUSH2 0x86 PUSH2 0x96 CALLDATASIZE PUSH1 0x4 PUSH2 0x304 JUMP JUMPDEST PUSH2 0xE7 JUMP JUMPDEST PUSH2 0x60 PUSH2 0xA9 CALLDATASIZE PUSH1 0x4 PUSH2 0x349 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 DUP2 DUP4 ADD DUP2 ADD DUP1 MLOAD PUSH1 0x2 DUP3 MSTORE SWAP3 DUP3 ADD SWAP2 SWAP1 SWAP4 ADD KECCAK256 SWAP2 MSTORE SLOAD DUP2 JUMP JUMPDEST PUSH2 0xD9 PUSH2 0xD4 CALLDATASIZE PUSH1 0x4 PUSH2 0x248 JUMP JUMPDEST PUSH2 0x190 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6A SWAP3 SWAP2 SWAP1 PUSH2 0x3AA JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP4 DUP2 MSTORE PUSH1 0x1 DUP1 SLOAD DUP1 DUP3 ADD DUP3 SSTORE PUSH1 0x0 SWAP2 SWAP1 SWAP2 MSTORE DUP3 MLOAD PUSH1 0x2 SWAP1 SWAP2 MUL PUSH32 0xB10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF6 DUP2 ADD SWAP2 DUP3 SSTORE SWAP2 MLOAD SWAP1 SWAP2 PUSH32 0xB10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF7 ADD SWAP1 PUSH2 0x168 SWAP1 DUP3 PUSH2 0x46D JUMP JUMPDEST POP POP POP DUP1 PUSH1 0x2 DUP4 PUSH1 0x40 MLOAD PUSH2 0x17C SWAP2 SWAP1 PUSH2 0x52D JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 KECCAK256 SSTORE POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x1A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP1 SWAP2 KECCAK256 PUSH1 0x2 SWAP1 SWAP2 MUL ADD DUP1 SLOAD PUSH1 0x1 DUP3 ADD DUP1 SLOAD SWAP2 SWAP4 POP SWAP1 PUSH2 0x1C5 SWAP1 PUSH2 0x3E4 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 0x1F1 SWAP1 PUSH2 0x3E4 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x23E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x213 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x23E 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 0x221 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x25A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x288 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x2A3 JUMPI PUSH2 0x2A3 PUSH2 0x261 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x2CB JUMPI PUSH2 0x2CB PUSH2 0x261 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x2E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x317 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x32E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x33A DUP6 DUP3 DUP7 ADD PUSH2 0x277 JUMP JUMPDEST SWAP6 PUSH1 0x20 SWAP5 SWAP1 SWAP5 ADD CALLDATALOAD SWAP5 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x35B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x372 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x37E DUP5 DUP3 DUP6 ADD PUSH2 0x277 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3A1 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x389 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST DUP3 DUP2 MSTORE PUSH1 0x40 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 DUP3 MLOAD DUP1 PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x3CF DUP2 PUSH1 0x60 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x386 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP2 SWAP1 SWAP2 ADD PUSH1 0x60 ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x3F8 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x418 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x468 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x445 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x464 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x451 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x487 JUMPI PUSH2 0x487 PUSH2 0x261 JUMP JUMPDEST PUSH2 0x49B DUP2 PUSH2 0x495 DUP5 SLOAD PUSH2 0x3E4 JUMP JUMPDEST DUP5 PUSH2 0x41E JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x4D0 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x4B8 JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x464 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x4FF JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x4E0 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x51D JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0x53F DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0x386 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xE1 PUSH6 0x745F2380F5D8 0x2C 0xD2 PUSH14 0xB642287FF31544D61B26D4CCB6EE 0xAB 0xA8 DUP2 0xD8 0xAE NUMBER SHL PUSH5 0x736F6C6343 STOP ADDMOD SLT STOP CALLER LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x4F DUP9 BALANCE 0xB6 0xD6 0xDB PUSH20 0x82D10BB374B1790F557698D896B01DD4FD10AD6D MUL SWAP4 PUSH15 0x911364736F6C634300081200330000 ",
"sourceMap": "90:570:1:-:0;;;;;;;;;;;;;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@createSimpleStorageContract_83": {
"entryPoint": 317,
"id": 83,
"parameterSlots": 0,
"returnSlots": 0
},
"@sfGet_112": {
"entryPoint": 482,
"id": 112,
"parameterSlots": 1,
"returnSlots": 1
},
"@sfStore_98": {
"entryPoint": 191,
"id": 98,
"parameterSlots": 2,
"returnSlots": 0
},
"@simpleStorageArray_65": {
"entryPoint": 440,
"id": 65,
"parameterSlots": 0,
"returnSlots": 0
},
"abi_decode_tuple_t_uint256": {
"entryPoint": 669,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256_fromMemory": {
"entryPoint": 716,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256t_uint256": {
"entryPoint": 635,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_encode_tuple_t_contract$_SimpleStorage_$58__to_t_address__fromStack_reversed": {
"entryPoint": null,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": null,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"panic_error_0x32": {
"entryPoint": 694,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:1180:2",
"statements": [
{
"nodeType": "YulBlock",
"src": "6:3:2",
"statements": []
},
{
"body": {
"nodeType": "YulBlock",
"src": "101:161:2",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "147:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "156:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "159:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "149:6:2"
},
"nodeType": "YulFunctionCall",
"src": "149:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "149:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "122:7:2"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "131:9:2"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "118:3:2"
},
"nodeType": "YulFunctionCall",
"src": "118:23:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "143:2:2",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "114:3:2"
},
"nodeType": "YulFunctionCall",
"src": "114:32:2"
},
"nodeType": "YulIf",
"src": "111:52:2"
},
{
"nodeType": "YulAssignment",
"src": "172:33:2",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "195:9:2"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "182:12:2"
},
"nodeType": "YulFunctionCall",
"src": "182:23:2"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "172:6:2"
}
]
},
{
"nodeType": "YulAssignment",
"src": "214:42:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "241:9:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "252:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "237:3:2"
},
"nodeType": "YulFunctionCall",
"src": "237:18:2"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "224:12:2"
},
"nodeType": "YulFunctionCall",
"src": "224:32:2"
},
"variableNames": [
{
"name": "value1",
"nodeType": "YulIdentifier",
"src": "214:6:2"
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "59:9:2",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "70:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "82:6:2",
"type": ""
},
{
"name": "value1",
"nodeType": "YulTypedName",
"src": "90:6:2",
"type": ""
}
],
"src": "14:248:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "337:110:2",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "383:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "392:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "395:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "385:6:2"
},
"nodeType": "YulFunctionCall",
"src": "385:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "385:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "358:7:2"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "367:9:2"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "354:3:2"
},
"nodeType": "YulFunctionCall",
"src": "354:23:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "379:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "350:3:2"
},
"nodeType": "YulFunctionCall",
"src": "350:32:2"
},
"nodeType": "YulIf",
"src": "347:52:2"
},
{
"nodeType": "YulAssignment",
"src": "408:33:2",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "431:9:2"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "418:12:2"
},
"nodeType": "YulFunctionCall",
"src": "418:23:2"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "408:6:2"
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "303:9:2",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "314:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "326:6:2",
"type": ""
}
],
"src": "267:180:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "573:102:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "583:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "595:9:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "606:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "591:3:2"
},
"nodeType": "YulFunctionCall",
"src": "591:18:2"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "583:4:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "625:9:2"
},
{
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "640:6:2"
},
{
"arguments": [
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "656:3:2",
"type": "",
"value": "160"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "661:1:2",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "shl",
"nodeType": "YulIdentifier",
"src": "652:3:2"
},
"nodeType": "YulFunctionCall",
"src": "652:11:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "665:1:2",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "648:3:2"
},
"nodeType": "YulFunctionCall",
"src": "648:19:2"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "636:3:2"
},
"nodeType": "YulFunctionCall",
"src": "636:32:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "618:6:2"
},
"nodeType": "YulFunctionCall",
"src": "618:51:2"
},
"nodeType": "YulExpressionStatement",
"src": "618:51:2"
}
]
},
"name": "abi_encode_tuple_t_contract$_SimpleStorage_$58__to_t_address__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "542:9:2",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "553:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "564:4:2",
"type": ""
}
],
"src": "452:223:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "781:76:2",
"statements": [
{
"nodeType": "YulAssignment",
"src": "791:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "803:9:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "814:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "799:3:2"
},
"nodeType": "YulFunctionCall",
"src": "799:18:2"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "791:4:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "833:9:2"
},
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "844:6:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "826:6:2"
},
"nodeType": "YulFunctionCall",
"src": "826:25:2"
},
"nodeType": "YulExpressionStatement",
"src": "826:25:2"
}
]
},
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "750:9:2",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "761:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "772:4:2",
"type": ""
}
],
"src": "680:177:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "894:95:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "911:1:2",
"type": "",
"value": "0"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "918:3:2",
"type": "",
"value": "224"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "923:10:2",
"type": "",
"value": "0x4e487b71"
}
],
"functionName": {
"name": "shl",
"nodeType": "YulIdentifier",
"src": "914:3:2"
},
"nodeType": "YulFunctionCall",
"src": "914:20:2"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "904:6:2"
},
"nodeType": "YulFunctionCall",
"src": "904:31:2"
},
"nodeType": "YulExpressionStatement",
"src": "904:31:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "951:1:2",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "954:4:2",
"type": "",
"value": "0x32"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "944:6:2"
},
"nodeType": "YulFunctionCall",
"src": "944:15:2"
},
"nodeType": "YulExpressionStatement",
"src": "944:15:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "975:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "978:4:2",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "968:6:2"
},
"nodeType": "YulFunctionCall",
"src": "968:15:2"
},
"nodeType": "YulExpressionStatement",
"src": "968:15:2"
}
]
},
"name": "panic_error_0x32",
"nodeType": "YulFunctionDefinition",
"src": "862:127:2"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1075:103:2",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1121:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1130:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1133:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1123:6:2"
},
"nodeType": "YulFunctionCall",
"src": "1123:12:2"
},
"nodeType": "YulExpressionStatement",
"src": "1123:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1096:7:2"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1105:9:2"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1092:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1092:23:2"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1117:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "1088:3:2"
},
"nodeType": "YulFunctionCall",
"src": "1088:32:2"
},
"nodeType": "YulIf",
"src": "1085:52:2"
},
{
"nodeType": "YulAssignment",
"src": "1146:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1162:9:2"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "1156:5:2"
},
"nodeType": "YulFunctionCall",
"src": "1156:16:2"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1146:6:2"
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256_fromMemory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1041:9:2",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "1052:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1064:6:2",
"type": ""
}
],
"src": "994:184:2"
}
]
},
"contents": "{\n { }\n function abi_decode_tuple_t_uint256t_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := calldataload(headStart)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := calldataload(headStart)\n }\n function abi_encode_tuple_t_contract$_SimpleStorage_$58__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := mload(headStart)\n }\n}",
"id": 2,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "608060405234801561001057600080fd5b506004361061004c5760003560e01c80631563700f146100515780631dda65411461006657806364591bf11461006e578063c5f19c201461009e575b600080fd5b61006461005f36600461027b565b6100bf565b005b61006461013d565b61008161007c36600461029d565b6101b8565b6040516001600160a01b0390911681526020015b60405180910390f35b6100b16100ac36600461029d565b6101e2565b604051908152602001610095565b600082815481106100d2576100d26102b6565b600091825260209091200154604051636057361d60e01b8152600481018390526001600160a01b0390911690636057361d90602401600060405180830381600087803b15801561012157600080fd5b505af1158015610135573d6000803e3d6000fd5b505050505050565b600060405161014b9061026e565b604051809103906000f080158015610167573d6000803e3d6000fd5b50600080546001810182559080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b039290921691909117905550565b600081815481106101c857600080fd5b6000918252602090912001546001600160a01b0316905081565b60008082815481106101f6576101f66102b6565b6000918252602091829020015460408051632e64cec160e01b815290516001600160a01b0390921692632e64cec1926004808401938290030181865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061026891906102cc565b92915050565b61059f806102e683390190565b6000806040838503121561028e57600080fd5b50508035926020909101359150565b6000602082840312156102af57600080fd5b5035919050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156102de57600080fd5b505191905056fe608060405234801561001057600080fd5b5061057f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80632e64cec11461005c5780636057361d146100735780636f760f41146100885780638bab8dd51461009b5780639e7a13ad146100c6575b600080fd5b6000545b6040519081526020015b60405180910390f35b610086610081366004610248565b600055565b005b610086610096366004610304565b6100e7565b6100606100a9366004610349565b805160208183018101805160028252928201919093012091525481565b6100d96100d4366004610248565b610190565b60405161006a9291906103aa565b6040805180820190915281815260208101838152600180548082018255600091909152825160029091027fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf68101918255915190917fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf70190610168908261046d565b5050508060028360405161017c919061052d565b908152604051908190036020019020555050565b600181815481106101a057600080fd5b600091825260209091206002909102018054600182018054919350906101c5906103e4565b80601f01602080910402602001604051908101604052809291908181526020018280546101f1906103e4565b801561023e5780601f106102135761010080835404028352916020019161023e565b820191906000526020600020905b81548152906001019060200180831161022157829003601f168201915b5050505050905082565b60006020828403121561025a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261028857600080fd5b813567ffffffffffffffff808211156102a3576102a3610261565b604051601f8301601f19908116603f011681019082821181831017156102cb576102cb610261565b816040528381528660208588010111156102e457600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561031757600080fd5b823567ffffffffffffffff81111561032e57600080fd5b61033a85828601610277565b95602094909401359450505050565b60006020828403121561035b57600080fd5b813567ffffffffffffffff81111561037257600080fd5b61037e84828501610277565b949350505050565b60005b838110156103a1578181015183820152602001610389565b50506000910152565b82815260406020820152600082518060408401526103cf816060850160208701610386565b601f01601f1916919091016060019392505050565b600181811c908216806103f857607f821691505b60208210810361041857634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561046857600081815260208120601f850160051c810160208610156104455750805b601f850160051c820191505b8181101561046457828155600101610451565b5050505b505050565b815167ffffffffffffffff81111561048757610487610261565b61049b8161049584546103e4565b8461041e565b602080601f8311600181146104d057600084156104b85750858301515b600019600386901b1c1916600185901b178555610464565b600085815260208120601f198616915b828110156104ff578886015182559484019460019091019084016104e0565b508582101561051d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000825161053f818460208701610386565b919091019291505056fea2646970667358221220e165745f2380f5d82cd26db642287ff31544d61b26d4ccb6eeaba881d8ae431b64736f6c63430008120033a26469706673582212204f8831b6d6db7382d10bb374b1790f557698d896b01dd4fd10ad6d02936e911364736f6c63430008120033",
"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 0x1563700F EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x1DDA6541 EQ PUSH2 0x66 JUMPI DUP1 PUSH4 0x64591BF1 EQ PUSH2 0x6E JUMPI DUP1 PUSH4 0xC5F19C20 EQ PUSH2 0x9E JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x64 PUSH2 0x5F CALLDATASIZE PUSH1 0x4 PUSH2 0x27B JUMP JUMPDEST PUSH2 0xBF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x64 PUSH2 0x13D JUMP JUMPDEST PUSH2 0x81 PUSH2 0x7C CALLDATASIZE PUSH1 0x4 PUSH2 0x29D JUMP JUMPDEST PUSH2 0x1B8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xB1 PUSH2 0xAC CALLDATASIZE PUSH1 0x4 PUSH2 0x29D JUMP JUMPDEST PUSH2 0x1E2 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x95 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0xD2 JUMPI PUSH2 0xD2 PUSH2 0x2B6 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP1 SWAP2 KECCAK256 ADD SLOAD PUSH1 0x40 MLOAD PUSH4 0x6057361D PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 DUP2 ADD DUP4 SWAP1 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND SWAP1 PUSH4 0x6057361D SWAP1 PUSH1 0x24 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x121 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x135 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD PUSH2 0x14B SWAP1 PUSH2 0x26E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 PUSH1 0x0 CREATE DUP1 ISZERO DUP1 ISZERO PUSH2 0x167 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x0 DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP1 MSTORE PUSH32 0x290DECD9548B62A8D60345A988386FC84BA6BC95484008F6362F93160EF3E563 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP3 SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x1C8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP1 SWAP2 KECCAK256 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND SWAP1 POP DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x1F6 JUMPI PUSH2 0x1F6 PUSH2 0x2B6 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP2 DUP3 SWAP1 KECCAK256 ADD SLOAD PUSH1 0x40 DUP1 MLOAD PUSH4 0x2E64CEC1 PUSH1 0xE0 SHL DUP2 MSTORE SWAP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP3 PUSH4 0x2E64CEC1 SWAP3 PUSH1 0x4 DUP1 DUP5 ADD SWAP4 DUP3 SWAP1 SUB ADD DUP2 DUP7 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x244 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x268 SWAP2 SWAP1 PUSH2 0x2CC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x59F DUP1 PUSH2 0x2E6 DUP4 CODECOPY ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x28E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP DUP1 CALLDATALOAD SWAP3 PUSH1 0x20 SWAP1 SWAP2 ADD CALLDATALOAD SWAP2 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2DE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD SWAP2 SWAP1 POP JUMP INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x57F DUP1 PUSH2 0x20 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 0x57 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x2E64CEC1 EQ PUSH2 0x5C JUMPI DUP1 PUSH4 0x6057361D EQ PUSH2 0x73 JUMPI DUP1 PUSH4 0x6F760F41 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0x8BAB8DD5 EQ PUSH2 0x9B JUMPI DUP1 PUSH4 0x9E7A13AD EQ PUSH2 0xC6 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SLOAD JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x86 PUSH2 0x81 CALLDATASIZE PUSH1 0x4 PUSH2 0x248 JUMP JUMPDEST PUSH1 0x0 SSTORE JUMP JUMPDEST STOP JUMPDEST PUSH2 0x86 PUSH2 0x96 CALLDATASIZE PUSH1 0x4 PUSH2 0x304 JUMP JUMPDEST PUSH2 0xE7 JUMP JUMPDEST PUSH2 0x60 PUSH2 0xA9 CALLDATASIZE PUSH1 0x4 PUSH2 0x349 JUMP JUMPDEST DUP1 MLOAD PUSH1 0x20 DUP2 DUP4 ADD DUP2 ADD DUP1 MLOAD PUSH1 0x2 DUP3 MSTORE SWAP3 DUP3 ADD SWAP2 SWAP1 SWAP4 ADD KECCAK256 SWAP2 MSTORE SLOAD DUP2 JUMP JUMPDEST PUSH2 0xD9 PUSH2 0xD4 CALLDATASIZE PUSH1 0x4 PUSH2 0x248 JUMP JUMPDEST PUSH2 0x190 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6A SWAP3 SWAP2 SWAP1 PUSH2 0x3AA JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD SWAP1 SWAP2 MSTORE DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP4 DUP2 MSTORE PUSH1 0x1 DUP1 SLOAD DUP1 DUP3 ADD DUP3 SSTORE PUSH1 0x0 SWAP2 SWAP1 SWAP2 MSTORE DUP3 MLOAD PUSH1 0x2 SWAP1 SWAP2 MUL PUSH32 0xB10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF6 DUP2 ADD SWAP2 DUP3 SSTORE SWAP2 MLOAD SWAP1 SWAP2 PUSH32 0xB10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF7 ADD SWAP1 PUSH2 0x168 SWAP1 DUP3 PUSH2 0x46D JUMP JUMPDEST POP POP POP DUP1 PUSH1 0x2 DUP4 PUSH1 0x40 MLOAD PUSH2 0x17C SWAP2 SWAP1 PUSH2 0x52D JUMP JUMPDEST SWAP1 DUP2 MSTORE PUSH1 0x40 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 KECCAK256 SSTORE POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SLOAD DUP2 LT PUSH2 0x1A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 SWAP1 SWAP2 KECCAK256 PUSH1 0x2 SWAP1 SWAP2 MUL ADD DUP1 SLOAD PUSH1 0x1 DUP3 ADD DUP1 SLOAD SWAP2 SWAP4 POP SWAP1 PUSH2 0x1C5 SWAP1 PUSH2 0x3E4 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 0x1F1 SWAP1 PUSH2 0x3E4 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x23E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x213 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x23E 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 0x221 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x25A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD SWAP2 SWAP1 POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x288 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x2A3 JUMPI PUSH2 0x2A3 PUSH2 0x261 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x2CB JUMPI PUSH2 0x2CB PUSH2 0x261 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x2E4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x317 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP3 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x32E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x33A DUP6 DUP3 DUP7 ADD PUSH2 0x277 JUMP JUMPDEST SWAP6 PUSH1 0x20 SWAP5 SWAP1 SWAP5 ADD CALLDATALOAD SWAP5 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x35B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x372 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x37E DUP5 DUP3 DUP6 ADD PUSH2 0x277 JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x3A1 JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x389 JUMP JUMPDEST POP POP PUSH1 0x0 SWAP2 ADD MSTORE JUMP JUMPDEST DUP3 DUP2 MSTORE PUSH1 0x40 PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x0 DUP3 MLOAD DUP1 PUSH1 0x40 DUP5 ADD MSTORE PUSH2 0x3CF DUP2 PUSH1 0x60 DUP6 ADD PUSH1 0x20 DUP8 ADD PUSH2 0x386 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x1F NOT AND SWAP2 SWAP1 SWAP2 ADD PUSH1 0x60 ADD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x3F8 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x418 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x468 JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x445 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x464 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x451 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x487 JUMPI PUSH2 0x487 PUSH2 0x261 JUMP JUMPDEST PUSH2 0x49B DUP2 PUSH2 0x495 DUP5 SLOAD PUSH2 0x3E4 JUMP JUMPDEST DUP5 PUSH2 0x41E JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x4D0 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x4B8 JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x464 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x4FF JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x4E0 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x51D JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP3 MLOAD PUSH2 0x53F DUP2 DUP5 PUSH1 0x20 DUP8 ADD PUSH2 0x386 JUMP JUMPDEST SWAP2 SWAP1 SWAP2 ADD SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xE1 PUSH6 0x745F2380F5D8 0x2C 0xD2 PUSH14 0xB642287FF31544D61B26D4CCB6EE 0xAB 0xA8 DUP2 0xD8 0xAE NUMBER SHL PUSH5 0x736F6C6343 STOP ADDMOD SLT STOP CALLER LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x4F DUP9 BALANCE 0xB6 0xD6 0xDB PUSH20 0x82D10BB374B1790F557698D896B01DD4FD10AD6D MUL SWAP4 PUSH15 0x911364736F6C634300081200330000 ",
"sourceMap": "90:570:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;335:168;;;;;;:::i;:::-;;:::i;:::-;;169:160;;;:::i;121:41::-;;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;636:32:2;;;618:51;;606:2;591:18;121:41:1;;;;;;;;509:149;;;;;;:::i;:::-;;:::i;:::-;;;826:25:2;;;814:2;799:18;509:149:1;680:177:2;335:168:1;429:18;448:19;429:39;;;;;;;;:::i;:::-;;;;;;;;;;;:67;;-1:-1:-1;;;429:67:1;;;;;826:25:2;;;-1:-1:-1;;;;;429:39:1;;;;:45;;799:18:2;;429:67:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;335:168;;:::o;169:160::-;225:27;255:19;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;284:18:1;:38;;;;;;;;;;;;;;-1:-1:-1;;;;;;284:38:1;-1:-1:-1;;;;;284:38:1;;;;;;;;;;-1:-1:-1;169:160:1:o;121:41::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;121:41:1;;-1:-1:-1;121:41:1;:::o;509:149::-;574:7;601:18;620:19;601:39;;;;;;;;:::i;:::-;;;;;;;;;;;;:50;;;-1:-1:-1;;;601:50:1;;;;-1:-1:-1;;;;;601:39:1;;;;:48;;:50;;;;;;;;;;:39;:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;594:57;509:149;-1:-1:-1;;509:149:1:o;-1:-1:-1:-;;;;;;;;:::o;14:248:2:-;82:6;90;143:2;131:9;122:7;118:23;114:32;111:52;;;159:1;156;149:12;111:52;-1:-1:-1;;182:23:2;;;252:2;237:18;;;224:32;;-1:-1:-1;14:248:2:o;267:180::-;326:6;379:2;367:9;358:7;354:23;350:32;347:52;;;395:1;392;385:12;347:52;-1:-1:-1;418:23:2;;267:180;-1:-1:-1;267:180:2:o;862:127::-;923:10;918:3;914:20;911:1;904:31;954:4;951:1;944:15;978:4;975:1;968:15;994:184;1064:6;1117:2;1105:9;1096:7;1092:23;1088:32;1085:52;;;1133:1;1130;1123:12;1085:52;-1:-1:-1;1156:16:2;;994:184;-1:-1:-1;994:184:2:o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "446800",
"executionCost": "480",
"totalCost": "447280"
},
"external": {
"createSimpleStorageContract()": "infinite",
"sfGet(uint256)": "infinite",
"sfStore(uint256,uint256)": "infinite",
"simpleStorageArray(uint256)": "4625"
}
},
"legacyAssembly": {
".code": [
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "80"
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 90,
"end": 660,
"name": "MSTORE",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "ISZERO",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH [tag]",
"source": 1,
"value": "1"
},
{
"begin": 90,
"end": 660,
"name": "JUMPI",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "REVERT",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "tag",
"source": 1,
"value": "1"
},
{
"begin": 90,
"end": 660,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "POP",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH #[$]",
"source": 1,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH [$]",
"source": 1,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 90,
"end": 660,
"name": "CODECOPY",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 90,
"end": 660,
"name": "RETURN",
"source": 1
}
],
".data": {
"0": {
".auxdata": "a26469706673582212204f8831b6d6db7382d10bb374b1790f557698d896b01dd4fd10ad6d02936e911364736f6c63430008120033",
".code": [
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "80"
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 90,
"end": 660,
"name": "MSTORE",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "ISZERO",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH [tag]",
"source": 1,
"value": "1"
},
{
"begin": 90,
"end": 660,
"name": "JUMPI",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "REVERT",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "tag",
"source": 1,
"value": "1"
},
{
"begin": 90,
"end": 660,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "POP",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 90,
"end": 660,
"name": "CALLDATASIZE",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "LT",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH [tag]",
"source": 1,
"value": "2"
},
{
"begin": 90,
"end": 660,
"name": "JUMPI",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 90,
"end": 660,
"name": "CALLDATALOAD",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "E0"
},
{
"begin": 90,
"end": 660,
"name": "SHR",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "1563700F"
},
{
"begin": 90,
"end": 660,
"name": "EQ",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH [tag]",
"source": 1,
"value": "3"
},
{
"begin": 90,
"end": 660,
"name": "JUMPI",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "1DDA6541"
},
{
"begin": 90,
"end": 660,
"name": "EQ",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH [tag]",
"source": 1,
"value": "4"
},
{
"begin": 90,
"end": 660,
"name": "JUMPI",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "64591BF1"
},
{
"begin": 90,
"end": 660,
"name": "EQ",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH [tag]",
"source": 1,
"value": "5"
},
{
"begin": 90,
"end": 660,
"name": "JUMPI",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "C5F19C20"
},
{
"begin": 90,
"end": 660,
"name": "EQ",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH [tag]",
"source": 1,
"value": "6"
},
{
"begin": 90,
"end": 660,
"name": "JUMPI",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "tag",
"source": 1,
"value": "2"
},
{
"begin": 90,
"end": 660,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 90,
"end": 660,
"name": "DUP1",
"source": 1
},
{
"begin": 90,
"end": 660,
"name": "REVERT",
"source": 1
},
{
"begin": 335,
"end": 503,
"name": "tag",
"source": 1,
"value": "3"
},
{
"begin": 335,
"end": 503,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 335,
"end": 503,
"name": "PUSH [tag]",
"source": 1,
"value": "7"
},
{
"begin": 335,
"end": 503,
"name": "PUSH [tag]",
"source": 1,
"value": "8"
},
{
"begin": 335,
"end": 503,
"name": "CALLDATASIZE",
"source": 1
},
{
"begin": 335,
"end": 503,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 335,
"end": 503,
"name": "PUSH [tag]",
"source": 1,
"value": "9"
},
{
"begin": 335,
"end": 503,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 335,
"end": 503,
"name": "tag",
"source": 1,
"value": "8"
},
{
"begin": 335,
"end": 503,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 335,
"end": 503,
"name": "PUSH [tag]",
"source": 1,
"value": "10"
},
{
"begin": 335,
"end": 503,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 335,
"end": 503,
"name": "tag",
"source": 1,
"value": "7"
},
{
"begin": 335,
"end": 503,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 335,
"end": 503,
"name": "STOP",
"source": 1
},
{
"begin": 169,
"end": 329,
"name": "tag",
"source": 1,
"value": "4"
},
{
"begin": 169,
"end": 329,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 169,
"end": 329,
"name": "PUSH [tag]",
"source": 1,
"value": "7"
},
{
"begin": 169,
"end": 329,
"name": "PUSH [tag]",
"source": 1,
"value": "12"
},
{
"begin": 169,
"end": 329,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "tag",
"source": 1,
"value": "5"
},
{
"begin": 121,
"end": 162,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH [tag]",
"source": 1,
"value": "13"
},
{
"begin": 121,
"end": 162,
"name": "PUSH [tag]",
"source": 1,
"value": "14"
},
{
"begin": 121,
"end": 162,
"name": "CALLDATASIZE",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 121,
"end": 162,
"name": "PUSH [tag]",
"source": 1,
"value": "15"
},
{
"begin": 121,
"end": 162,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "tag",
"source": 1,
"value": "14"
},
{
"begin": 121,
"end": 162,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH [tag]",
"source": 1,
"value": "16"
},
{
"begin": 121,
"end": 162,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "tag",
"source": 1,
"value": "13"
},
{
"begin": 121,
"end": 162,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 121,
"end": 162,
"name": "MLOAD",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "SHL",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SUB",
"source": -1
},
{
"begin": 636,
"end": 668,
"name": "SWAP1",
"source": 2
},
{
"begin": 636,
"end": 668,
"name": "SWAP2",
"source": 2
},
{
"begin": 636,
"end": 668,
"name": "AND",
"source": 2
},
{
"begin": 618,
"end": 669,
"name": "DUP2",
"source": 2
},
{
"begin": 618,
"end": 669,
"name": "MSTORE",
"source": 2
},
{
"begin": 606,
"end": 608,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 591,
"end": 609,
"name": "ADD",
"source": 2
},
{
"begin": 121,
"end": 162,
"name": "tag",
"source": 1,
"value": "17"
},
{
"begin": 121,
"end": 162,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 121,
"end": 162,
"name": "MLOAD",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "DUP1",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "SWAP2",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "SUB",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "SWAP1",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "RETURN",
"source": 1
},
{
"begin": 509,
"end": 658,
"name": "tag",
"source": 1,
"value": "6"
},
{
"begin": 509,
"end": 658,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 509,
"end": 658,
"name": "PUSH [tag]",
"source": 1,
"value": "19"
},
{
"begin": 509,
"end": 658,
"name": "PUSH [tag]",
"source": 1,
"value": "20"
},
{
"begin": 509,
"end": 658,
"name": "CALLDATASIZE",
"source": 1
},
{
"begin": 509,
"end": 658,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 509,
"end": 658,
"name": "PUSH [tag]",
"source": 1,
"value": "15"
},
{
"begin": 509,
"end": 658,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 509,
"end": 658,
"name": "tag",
"source": 1,
"value": "20"
},
{
"begin": 509,
"end": 658,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 509,
"end": 658,
"name": "PUSH [tag]",
"source": 1,
"value": "21"
},
{
"begin": 509,
"end": 658,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 509,
"end": 658,
"name": "tag",
"source": 1,
"value": "19"
},
{
"begin": 509,
"end": 658,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 509,
"end": 658,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 509,
"end": 658,
"name": "MLOAD",
"source": 1
},
{
"begin": 826,
"end": 851,
"name": "SWAP1",
"source": 2
},
{
"begin": 826,
"end": 851,
"name": "DUP2",
"source": 2
},
{
"begin": 826,
"end": 851,
"name": "MSTORE",
"source": 2
},
{
"begin": 814,
"end": 816,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 799,
"end": 817,
"name": "ADD",
"source": 2
},
{
"begin": 509,
"end": 658,
"name": "PUSH [tag]",
"source": 1,
"value": "17"
},
{
"begin": 680,
"end": 857,
"name": "JUMP",
"source": 2
},
{
"begin": 335,
"end": 503,
"name": "tag",
"source": 1,
"value": "10"
},
{
"begin": 335,
"end": 503,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 429,
"end": 447,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 448,
"end": 467,
"name": "DUP3",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "DUP2",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "SLOAD",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "DUP2",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "LT",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "PUSH [tag]",
"source": 1,
"value": "26"
},
{
"begin": 429,
"end": 468,
"name": "JUMPI",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "PUSH [tag]",
"source": 1,
"value": "26"
},
{
"begin": 429,
"end": 468,
"name": "PUSH [tag]",
"source": 1,
"value": "27"
},
{
"begin": 429,
"end": 468,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "tag",
"source": 1,
"value": "26"
},
{
"begin": 429,
"end": 468,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 429,
"end": 468,
"name": "SWAP2",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "DUP3",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "MSTORE",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 429,
"end": 468,
"name": "SWAP1",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "SWAP2",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "KECCAK256",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "ADD",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "SLOAD",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 429,
"end": 496,
"name": "MLOAD",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "6057361D"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "E0"
},
{
"begin": -1,
"end": -1,
"name": "SHL",
"source": -1
},
{
"begin": 429,
"end": 496,
"name": "DUP2",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "MSTORE",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 429,
"end": 496,
"name": "DUP2",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "ADD",
"source": 1
},
{
"begin": 826,
"end": 851,
"name": "DUP4",
"source": 2
},
{
"begin": 826,
"end": 851,
"name": "SWAP1",
"source": 2
},
{
"begin": 826,
"end": 851,
"name": "MSTORE",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "SHL",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SUB",
"source": -1
},
{
"begin": 429,
"end": 468,
"name": "SWAP1",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "SWAP2",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "AND",
"source": 1
},
{
"begin": 429,
"end": 468,
"name": "SWAP1",
"source": 1
},
{
"begin": 429,
"end": 474,
"name": "PUSH",
"source": 1,
"value": "6057361D"
},
{
"begin": 429,
"end": 474,
"name": "SWAP1",
"source": 1
},
{
"begin": 799,
"end": 817,
"name": "PUSH",
"source": 2,
"value": "24"
},
{
"begin": 799,
"end": 817,
"name": "ADD",
"source": 2
},
{
"begin": 429,
"end": 496,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 429,
"end": 496,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 429,
"end": 496,
"name": "MLOAD",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "DUP1",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "DUP4",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "SUB",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "DUP2",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 429,
"end": 496,
"name": "DUP8",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "DUP1",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "EXTCODESIZE",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "ISZERO",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "DUP1",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "ISZERO",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "PUSH [tag]",
"source": 1,
"value": "30"
},
{
"begin": 429,
"end": 496,
"name": "JUMPI",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 429,
"end": 496,
"name": "DUP1",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "REVERT",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "tag",
"source": 1,
"value": "30"
},
{
"begin": 429,
"end": 496,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "POP",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "GAS",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "CALL",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "ISZERO",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "DUP1",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "ISZERO",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "PUSH [tag]",
"source": 1,
"value": "32"
},
{
"begin": 429,
"end": 496,
"name": "JUMPI",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 429,
"end": 496,
"name": "DUP1",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "RETURNDATACOPY",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 429,
"end": 496,
"name": "REVERT",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "tag",
"source": 1,
"value": "32"
},
{
"begin": 429,
"end": 496,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "POP",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "POP",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "POP",
"source": 1
},
{
"begin": 429,
"end": 496,
"name": "POP",
"source": 1
},
{
"begin": 335,
"end": 503,
"name": "POP",
"source": 1
},
{
"begin": 335,
"end": 503,
"name": "POP",
"source": 1
},
{
"begin": 335,
"end": 503,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 169,
"end": 329,
"name": "tag",
"source": 1,
"value": "12"
},
{
"begin": 169,
"end": 329,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 225,
"end": 252,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 255,
"end": 274,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 255,
"end": 274,
"name": "MLOAD",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "PUSH [tag]",
"source": 1,
"value": "34"
},
{
"begin": 255,
"end": 274,
"name": "SWAP1",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "PUSH [tag]",
"source": 1,
"value": "35"
},
{
"begin": 255,
"end": 274,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "tag",
"source": 1,
"value": "34"
},
{
"begin": 255,
"end": 274,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 255,
"end": 274,
"name": "MLOAD",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "DUP1",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "SWAP2",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "SUB",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "SWAP1",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 255,
"end": 274,
"name": "CREATE",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "DUP1",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "ISZERO",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "DUP1",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "ISZERO",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "PUSH [tag]",
"source": 1,
"value": "36"
},
{
"begin": 255,
"end": 274,
"name": "JUMPI",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 255,
"end": 274,
"name": "DUP1",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "RETURNDATACOPY",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 255,
"end": 274,
"name": "REVERT",
"source": 1
},
{
"begin": 255,
"end": 274,
"name": "tag",
"source": 1,
"value": "36"
},
{
"begin": 255,
"end": 274,
"name": "JUMPDEST",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 284,
"end": 302,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 284,
"end": 322,
"name": "DUP1",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SLOAD",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 284,
"end": 322,
"name": "DUP2",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "ADD",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "DUP3",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SSTORE",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SWAP1",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "DUP1",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "MSTORE",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "PUSH",
"source": 1,
"value": "290DECD9548B62A8D60345A988386FC84BA6BC95484008F6362F93160EF3E563"
},
{
"begin": 284,
"end": 322,
"name": "ADD",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "DUP1",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SLOAD",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "SHL",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SUB",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "NOT",
"source": -1
},
{
"begin": 284,
"end": 322,
"name": "AND",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "SHL",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SUB",
"source": -1
},
{
"begin": 284,
"end": 322,
"name": "SWAP3",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SWAP1",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SWAP3",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "AND",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SWAP2",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SWAP1",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SWAP2",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "OR",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SWAP1",
"source": 1
},
{
"begin": 284,
"end": 322,
"name": "SSTORE",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 169,
"end": 329,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "tag",
"source": 1,
"value": "16"
},
{
"begin": 121,
"end": 162,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 121,
"end": 162,
"name": "DUP2",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "DUP2",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "SLOAD",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "DUP2",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "LT",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH [tag]",
"source": 1,
"value": "38"
},
{
"begin": 121,
"end": 162,
"name": "JUMPI",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 121,
"end": 162,
"name": "DUP1",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "REVERT",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "tag",
"source": 1,
"value": "38"
},
{
"begin": 121,
"end": 162,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 121,
"end": 162,
"name": "SWAP2",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "DUP3",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "MSTORE",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 121,
"end": 162,
"name": "SWAP1",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "SWAP2",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "KECCAK256",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "ADD",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "SLOAD",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "SHL",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SUB",
"source": -1
},
{
"begin": 121,
"end": 162,
"name": "AND",
"source": 1
},
{
"begin": 121,
"end": 162,
"name": "SWAP1",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 121,
"end": 162,
"name": "DUP2",
"source": 1
},
{
"begin": 121,
"end": 162,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 509,
"end": 658,
"name": "tag",
"source": 1,
"value": "21"
},
{
"begin": 509,
"end": 658,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 574,
"end": 581,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 601,
"end": 619,
"name": "DUP1",
"source": 1
},
{
"begin": 620,
"end": 639,
"name": "DUP3",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "DUP2",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "SLOAD",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "DUP2",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "LT",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "PUSH [tag]",
"source": 1,
"value": "42"
},
{
"begin": 601,
"end": 640,
"name": "JUMPI",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "PUSH [tag]",
"source": 1,
"value": "42"
},
{
"begin": 601,
"end": 640,
"name": "PUSH [tag]",
"source": 1,
"value": "27"
},
{
"begin": 601,
"end": 640,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "tag",
"source": 1,
"value": "42"
},
{
"begin": 601,
"end": 640,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 601,
"end": 640,
"name": "SWAP2",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "DUP3",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "MSTORE",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 601,
"end": 640,
"name": "SWAP2",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "DUP3",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "SWAP1",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "KECCAK256",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "ADD",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "SLOAD",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 601,
"end": 651,
"name": "DUP1",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "MLOAD",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "2E64CEC1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "E0"
},
{
"begin": -1,
"end": -1,
"name": "SHL",
"source": -1
},
{
"begin": 601,
"end": 651,
"name": "DUP2",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "MSTORE",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "SWAP1",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "MLOAD",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "A0"
},
{
"begin": -1,
"end": -1,
"name": "SHL",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SUB",
"source": -1
},
{
"begin": 601,
"end": 640,
"name": "SWAP1",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "SWAP3",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "AND",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "SWAP3",
"source": 1
},
{
"begin": 601,
"end": 649,
"name": "PUSH",
"source": 1,
"value": "2E64CEC1"
},
{
"begin": 601,
"end": 649,
"name": "SWAP3",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 601,
"end": 651,
"name": "DUP1",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "DUP5",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "ADD",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "SWAP4",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "DUP3",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "SWAP1",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "SUB",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "ADD",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "DUP2",
"source": 1
},
{
"begin": 601,
"end": 640,
"name": "DUP7",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "GAS",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "STATICCALL",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "ISZERO",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "DUP1",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "ISZERO",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH [tag]",
"source": 1,
"value": "45"
},
{
"begin": 601,
"end": 651,
"name": "JUMPI",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 601,
"end": 651,
"name": "DUP1",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "RETURNDATACOPY",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 601,
"end": 651,
"name": "REVERT",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "tag",
"source": 1,
"value": "45"
},
{
"begin": 601,
"end": 651,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "POP",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "POP",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "POP",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "POP",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 601,
"end": 651,
"name": "MLOAD",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 601,
"end": 651,
"name": "NOT",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 601,
"end": 651,
"name": "DUP3",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "ADD",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "AND",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "DUP3",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "ADD",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "DUP1",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 601,
"end": 651,
"name": "MSTORE",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "POP",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "DUP2",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "ADD",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "SWAP1",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH [tag]",
"source": 1,
"value": "46"
},
{
"begin": 601,
"end": 651,
"name": "SWAP2",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "SWAP1",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "PUSH [tag]",
"source": 1,
"value": "47"
},
{
"begin": 601,
"end": 651,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 601,
"end": 651,
"name": "tag",
"source": 1,
"value": "46"
},
{
"begin": 601,
"end": 651,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 594,
"end": 651,
"name": "SWAP3",
"source": 1
},
{
"begin": 509,
"end": 658,
"name": "SWAP2",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 509,
"end": 658,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "35"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH #[$]",
"source": -1,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": -1,
"end": -1,
"name": "DUP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [$]",
"source": -1,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": -1,
"end": -1,
"name": "DUP4",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "CODECOPY",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"jumpType": "[out]",
"name": "JUMP",
"source": -1
},
{
"begin": 14,
"end": 262,
"name": "tag",
"source": 2,
"value": "9"
},
{
"begin": 14,
"end": 262,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 82,
"end": 88,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 90,
"end": 96,
"name": "DUP1",
"source": 2
},
{
"begin": 143,
"end": 145,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 131,
"end": 140,
"name": "DUP4",
"source": 2
},
{
"begin": 122,
"end": 129,
"name": "DUP6",
"source": 2
},
{
"begin": 118,
"end": 141,
"name": "SUB",
"source": 2
},
{
"begin": 114,
"end": 146,
"name": "SLT",
"source": 2
},
{
"begin": 111,
"end": 163,
"name": "ISZERO",
"source": 2
},
{
"begin": 111,
"end": 163,
"name": "PUSH [tag]",
"source": 2,
"value": "50"
},
{
"begin": 111,
"end": 163,
"name": "JUMPI",
"source": 2
},
{
"begin": 159,
"end": 160,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 156,
"end": 157,
"name": "DUP1",
"source": 2
},
{
"begin": 149,
"end": 161,
"name": "REVERT",
"source": 2
},
{
"begin": 111,
"end": 163,
"name": "tag",
"source": 2,
"value": "50"
},
{
"begin": 111,
"end": 163,
"name": "JUMPDEST",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 182,
"end": 205,
"name": "DUP1",
"source": 2
},
{
"begin": 182,
"end": 205,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 182,
"end": 205,
"name": "SWAP3",
"source": 2
},
{
"begin": 252,
"end": 254,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 237,
"end": 255,
"name": "SWAP1",
"source": 2
},
{
"begin": 237,
"end": 255,
"name": "SWAP2",
"source": 2
},
{
"begin": 237,
"end": 255,
"name": "ADD",
"source": 2
},
{
"begin": 224,
"end": 256,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 224,
"end": 256,
"name": "SWAP2",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 14,
"end": 262,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 267,
"end": 447,
"name": "tag",
"source": 2,
"value": "15"
},
{
"begin": 267,
"end": 447,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 326,
"end": 332,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 379,
"end": 381,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 367,
"end": 376,
"name": "DUP3",
"source": 2
},
{
"begin": 358,
"end": 365,
"name": "DUP5",
"source": 2
},
{
"begin": 354,
"end": 377,
"name": "SUB",
"source": 2
},
{
"begin": 350,
"end": 382,
"name": "SLT",
"source": 2
},
{
"begin": 347,
"end": 399,
"name": "ISZERO",
"source": 2
},
{
"begin": 347,
"end": 399,
"name": "PUSH [tag]",
"source": 2,
"value": "52"
},
{
"begin": 347,
"end": 399,
"name": "JUMPI",
"source": 2
},
{
"begin": 395,
"end": 396,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 392,
"end": 393,
"name": "DUP1",
"source": 2
},
{
"begin": 385,
"end": 397,
"name": "REVERT",
"source": 2
},
{
"begin": 347,
"end": 399,
"name": "tag",
"source": 2,
"value": "52"
},
{
"begin": 347,
"end": 399,
"name": "JUMPDEST",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 418,
"end": 441,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 418,
"end": 441,
"name": "SWAP2",
"source": 2
},
{
"begin": 267,
"end": 447,
"name": "SWAP1",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 267,
"end": 447,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 862,
"end": 989,
"name": "tag",
"source": 2,
"value": "27"
},
{
"begin": 862,
"end": 989,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 923,
"end": 933,
"name": "PUSH",
"source": 2,
"value": "4E487B71"
},
{
"begin": 918,
"end": 921,
"name": "PUSH",
"source": 2,
"value": "E0"
},
{
"begin": 914,
"end": 934,
"name": "SHL",
"source": 2
},
{
"begin": 911,
"end": 912,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 904,
"end": 935,
"name": "MSTORE",
"source": 2
},
{
"begin": 954,
"end": 958,
"name": "PUSH",
"source": 2,
"value": "32"
},
{
"begin": 951,
"end": 952,
"name": "PUSH",
"source": 2,
"value": "4"
},
{
"begin": 944,
"end": 959,
"name": "MSTORE",
"source": 2
},
{
"begin": 978,
"end": 982,
"name": "PUSH",
"source": 2,
"value": "24"
},
{
"begin": 975,
"end": 976,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 968,
"end": 983,
"name": "REVERT",
"source": 2
},
{
"begin": 994,
"end": 1178,
"name": "tag",
"source": 2,
"value": "47"
},
{
"begin": 994,
"end": 1178,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1064,
"end": 1070,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1117,
"end": 1119,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1105,
"end": 1114,
"name": "DUP3",
"source": 2
},
{
"begin": 1096,
"end": 1103,
"name": "DUP5",
"source": 2
},
{
"begin": 1092,
"end": 1115,
"name": "SUB",
"source": 2
},
{
"begin": 1088,
"end": 1120,
"name": "SLT",
"source": 2
},
{
"begin": 1085,
"end": 1137,
"name": "ISZERO",
"source": 2
},
{
"begin": 1085,
"end": 1137,
"name": "PUSH [tag]",
"source": 2,
"value": "57"
},
{
"begin": 1085,
"end": 1137,
"name": "JUMPI",
"source": 2
},
{
"begin": 1133,
"end": 1134,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1130,
"end": 1131,
"name": "DUP1",
"source": 2
},
{
"begin": 1123,
"end": 1135,
"name": "REVERT",
"source": 2
},
{
"begin": 1085,
"end": 1137,
"name": "tag",
"source": 2,
"value": "57"
},
{
"begin": 1085,
"end": 1137,
"name": "JUMPDEST",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 1156,
"end": 1172,
"name": "MLOAD",
"source": 2
},
{
"begin": 1156,
"end": 1172,
"name": "SWAP2",
"source": 2
},
{
"begin": 994,
"end": 1178,
"name": "SWAP1",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 994,
"end": 1178,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
}
],
".data": {
"0": {
".code": [
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 56,
"end": 796,
"name": "MSTORE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "ISZERO",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "REVERT",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 56,
"end": 796,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "POP",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "CODECOPY",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a2646970667358221220e165745f2380f5d82cd26db642287ff31544d61b26d4ccb6eeaba881d8ae431b64736f6c63430008120033",
".code": [
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 56,
"end": 796,
"name": "MSTORE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "ISZERO",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "REVERT",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 56,
"end": 796,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "POP",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 56,
"end": 796,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "LT",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 56,
"end": 796,
"name": "SHR",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "2E64CEC1"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "6057361D"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "6F760F41"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "8BAB8DD5"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "9E7A13AD"
},
{
"begin": 56,
"end": 796,
"name": "EQ",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 56,
"end": 796,
"name": "JUMPI",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 56,
"end": 796,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 56,
"end": 796,
"name": "DUP1",
"source": 0
},
{
"begin": 56,
"end": 796,
"name": "REVERT",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 514,
"end": 601,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 555,
"end": 562,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 580,
"end": 594,
"name": "SLOAD",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 514,
"end": 601,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 514,
"end": 601,
"name": "MLOAD",
"source": 0
},
{
"begin": 160,
"end": 185,
"name": "SWAP1",
"source": 2
},
{
"begin": 160,
"end": 185,
"name": "DUP2",
"source": 2
},
{
"begin": 160,
"end": 185,
"name": "MSTORE",
"source": 2
},
{
"begin": 148,
"end": 150,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 133,
"end": 151,
"name": "ADD",
"source": 2
},
{
"begin": 514,
"end": 601,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 514,
"end": 601,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 514,
"end": 601,
"name": "MLOAD",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "DUP1",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "SWAP2",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "SUB",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "SWAP1",
"source": 0
},
{
"begin": 514,
"end": 601,
"name": "RETURN",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 412,
"end": 508,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 412,
"end": 508,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 412,
"end": 508,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 412,
"end": 508,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 412,
"end": 508,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 412,
"end": 508,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 469,
"end": 483,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 469,
"end": 501,
"name": "SSTORE",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "JUMP",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "tag",
"source": 0,
"value": "12"
},
{
"begin": 412,
"end": 508,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 412,
"end": 508,
"name": "STOP",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 607,
"end": 794,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 607,
"end": 794,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 607,
"end": 794,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 607,
"end": 794,
"name": "PUSH [tag]",
"source": 0,
"value": "18"
},
{
"begin": 607,
"end": 794,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "tag",
"source": 0,
"value": "17"
},
{
"begin": 607,
"end": 794,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 607,
"end": 794,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 351,
"end": 405,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 351,
"end": 405,
"name": "PUSH [tag]",
"source": 0,
"value": "21"
},
{
"begin": 351,
"end": 405,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 351,
"end": 405,
"name": "PUSH [tag]",
"source": 0,
"value": "22"
},
{
"begin": 351,
"end": 405,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "tag",
"source": 0,
"value": "21"
},
{
"begin": 351,
"end": 405,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP1",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "MLOAD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 351,
"end": 405,
"name": "DUP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP4",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "ADD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "ADD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP1",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "MLOAD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 351,
"end": 405,
"name": "DUP3",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "MSTORE",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP3",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP3",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "ADD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP1",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP4",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "ADD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "KECCAK256",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SWAP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "MSTORE",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "SLOAD",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "DUP2",
"source": 0
},
{
"begin": 351,
"end": 405,
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "25"
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "26"
},
{
"begin": 322,
"end": 344,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "26"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "27"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "25"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "MLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 322,
"end": 344,
"name": "SWAP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "29"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 607,
"end": 794,
"name": "tag",
"source": 0,
"value": "19"
},
{
"begin": 607,
"end": 794,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 701,
"end": 731,
"name": "DUP1",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "MLOAD",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP1",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP3",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "ADD",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "SWAP1",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "SWAP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "MSTORE",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "MSTORE",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 701,
"end": 731,
"name": "DUP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "ADD",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP4",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "DUP2",
"source": 0
},
{
"begin": 701,
"end": 731,
"name": "MSTORE",
"source": 0
},
{
"begin": 689,
"end": 695,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 689,
"end": 732,
"name": "DUP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SLOAD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "ADD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SSTORE",
"source": 0
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "0"
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "MSTORE",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "MLOAD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "MUL",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH",
"source": 0,
"value": "B10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF6"
},
{
"begin": 689,
"end": 732,
"name": "DUP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "ADD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SSTORE",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "MLOAD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP2",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH",
"source": 0,
"value": "B10E2D527612073B26EECDFD717E6A320CF44B4AFAC2B0732D9FCBE2B7FA0CF7"
},
{
"begin": 689,
"end": 732,
"name": "ADD",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH [tag]",
"source": 0,
"value": "34"
},
{
"begin": 689,
"end": 732,
"name": "SWAP1",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "DUP3",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "PUSH [tag]",
"source": 0,
"value": "35"
},
{
"begin": 689,
"end": 732,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "tag",
"source": 0,
"value": "34"
},
{
"begin": 689,
"end": 732,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "POP",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "POP",
"source": 0
},
{
"begin": 689,
"end": 732,
"name": "POP",
"source": 0
},
{
"begin": 772,
"end": 787,
"name": "DUP1",
"source": 0
},
{
"begin": 742,
"end": 762,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 763,
"end": 768,
"name": "DUP4",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 742,
"end": 769,
"name": "MLOAD",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH [tag]",
"source": 0,
"value": "36"
},
{
"begin": 742,
"end": 769,
"name": "SWAP2",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH [tag]",
"source": 0,
"value": "37"
},
{
"begin": 742,
"end": 769,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "tag",
"source": 0,
"value": "36"
},
{
"begin": 742,
"end": 769,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "DUP2",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "MSTORE",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 742,
"end": 769,
"name": "MLOAD",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "DUP2",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SUB",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 742,
"end": 769,
"name": "ADD",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "SWAP1",
"source": 0
},
{
"begin": 742,
"end": 769,
"name": "KECCAK256",
"source": 0
},
{
"begin": 742,
"end": 787,
"name": "SSTORE",
"source": 0
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 607,
"end": 794,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "27"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "LT",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "38"
},
{
"begin": 322,
"end": 344,
"name": "JUMPI",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "REVERT",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "38"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "KECCAK256",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MUL",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP4",
"source": 0
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "41"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DIV",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MUL",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "MLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "42"
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "41"
},
{
"begin": 322,
"end": 344,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "42"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ISZERO",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "43"
},
{
"begin": 322,
"end": 344,
"name": "JUMPI",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 322,
"end": 344,
"name": "LT",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "44"
},
{
"begin": 322,
"end": 344,
"name": "JUMPI",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP4",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DIV",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MUL",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP4",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "43"
},
{
"begin": 322,
"end": 344,
"name": "JUMP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "44"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 322,
"end": 344,
"name": "KECCAK256",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "45"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SLOAD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "MSTORE",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP4",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "GT",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH [tag]",
"source": 0,
"value": "45"
},
{
"begin": 322,
"end": 344,
"name": "JUMPI",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SUB",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 322,
"end": 344,
"name": "AND",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "ADD",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP2",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "tag",
"source": 0,
"value": "43"
},
{
"begin": 322,
"end": 344,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "SWAP1",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "POP",
"source": 0
},
{
"begin": 322,
"end": 344,
"name": "DUP3",
"source": 0
},
{
"begin": 322,
"end": 344,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 196,
"end": 376,
"name": "tag",
"source": 2,
"value": "14"
},
{
"begin": 196,
"end": 376,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 255,
"end": 261,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 308,
"end": 310,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 296,
"end": 305,
"name": "DUP3",
"source": 2
},
{
"begin": 287,
"end": 294,
"name": "DUP5",
"source": 2
},
{
"begin": 283,
"end": 306,
"name": "SUB",
"source": 2
},
{
"begin": 279,
"end": 311,
"name": "SLT",
"source": 2
},
{
"begin": 276,
"end": 328,
"name": "ISZERO",
"source": 2
},
{
"begin": 276,
"end": 328,
"name": "PUSH [tag]",
"source": 2,
"value": "55"
},
{
"begin": 276,
"end": 328,
"name": "JUMPI",
"source": 2
},
{
"begin": 324,
"end": 325,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 321,
"end": 322,
"name": "DUP1",
"source": 2
},
{
"begin": 314,
"end": 326,
"name": "REVERT",
"source": 2
},
{
"begin": 276,
"end": 328,
"name": "tag",
"source": 2,
"value": "55"
},
{
"begin": 276,
"end": 328,
"name": "JUMPDEST",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 347,
"end": 370,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 347,
"end": 370,
"name": "SWAP2",
"source": 2
},
{
"begin": 196,
"end": 376,
"name": "SWAP1",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 196,
"end": 376,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 381,
"end": 508,
"name": "tag",
"source": 2,
"value": "46"
},
{
"begin": 381,
"end": 508,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 442,
"end": 452,
"name": "PUSH",
"source": 2,
"value": "4E487B71"
},
{
"begin": 437,
"end": 440,
"name": "PUSH",
"source": 2,
"value": "E0"
},
{
"begin": 433,
"end": 453,
"name": "SHL",
"source": 2
},
{
"begin": 430,
"end": 431,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 423,
"end": 454,
"name": "MSTORE",
"source": 2
},
{
"begin": 473,
"end": 477,
"name": "PUSH",
"source": 2,
"value": "41"
},
{
"begin": 470,
"end": 471,
"name": "PUSH",
"source": 2,
"value": "4"
},
{
"begin": 463,
"end": 478,
"name": "MSTORE",
"source": 2
},
{
"begin": 497,
"end": 501,
"name": "PUSH",
"source": 2,
"value": "24"
},
{
"begin": 494,
"end": 495,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 487,
"end": 502,
"name": "REVERT",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "tag",
"source": 2,
"value": "47"
},
{
"begin": 513,
"end": 1232,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 556,
"end": 561,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 609,
"end": 612,
"name": "DUP3",
"source": 2
},
{
"begin": 602,
"end": 606,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 594,
"end": 600,
"name": "DUP4",
"source": 2
},
{
"begin": 590,
"end": 607,
"name": "ADD",
"source": 2
},
{
"begin": 586,
"end": 613,
"name": "SLT",
"source": 2
},
{
"begin": 576,
"end": 631,
"name": "PUSH [tag]",
"source": 2,
"value": "58"
},
{
"begin": 576,
"end": 631,
"name": "JUMPI",
"source": 2
},
{
"begin": 627,
"end": 628,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 624,
"end": 625,
"name": "DUP1",
"source": 2
},
{
"begin": 617,
"end": 629,
"name": "REVERT",
"source": 2
},
{
"begin": 576,
"end": 631,
"name": "tag",
"source": 2,
"value": "58"
},
{
"begin": 576,
"end": 631,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 663,
"end": 669,
"name": "DUP2",
"source": 2
},
{
"begin": 650,
"end": 670,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 689,
"end": 707,
"name": "PUSH",
"source": 2,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 726,
"end": 728,
"name": "DUP1",
"source": 2
},
{
"begin": 722,
"end": 724,
"name": "DUP3",
"source": 2
},
{
"begin": 719,
"end": 729,
"name": "GT",
"source": 2
},
{
"begin": 716,
"end": 752,
"name": "ISZERO",
"source": 2
},
{
"begin": 716,
"end": 752,
"name": "PUSH [tag]",
"source": 2,
"value": "60"
},
{
"begin": 716,
"end": 752,
"name": "JUMPI",
"source": 2
},
{
"begin": 732,
"end": 750,
"name": "PUSH [tag]",
"source": 2,
"value": "60"
},
{
"begin": 732,
"end": 750,
"name": "PUSH [tag]",
"source": 2,
"value": "46"
},
{
"begin": 732,
"end": 750,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 732,
"end": 750,
"name": "tag",
"source": 2,
"value": "60"
},
{
"begin": 732,
"end": 750,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 807,
"end": 809,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 801,
"end": 810,
"name": "MLOAD",
"source": 2
},
{
"begin": 775,
"end": 777,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 861,
"end": 874,
"name": "DUP4",
"source": 2
},
{
"begin": 861,
"end": 874,
"name": "ADD",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1F"
},
{
"begin": -1,
"end": -1,
"name": "NOT",
"source": -1
},
{
"begin": 857,
"end": 879,
"name": "SWAP1",
"source": 2
},
{
"begin": 857,
"end": 879,
"name": "DUP2",
"source": 2
},
{
"begin": 857,
"end": 879,
"name": "AND",
"source": 2
},
{
"begin": 881,
"end": 883,
"name": "PUSH",
"source": 2,
"value": "3F"
},
{
"begin": 853,
"end": 884,
"name": "ADD",
"source": 2
},
{
"begin": 849,
"end": 889,
"name": "AND",
"source": 2
},
{
"begin": 837,
"end": 890,
"name": "DUP2",
"source": 2
},
{
"begin": 837,
"end": 890,
"name": "ADD",
"source": 2
},
{
"begin": 837,
"end": 890,
"name": "SWAP1",
"source": 2
},
{
"begin": 905,
"end": 923,
"name": "DUP3",
"source": 2
},
{
"begin": 905,
"end": 923,
"name": "DUP3",
"source": 2
},
{
"begin": 905,
"end": 923,
"name": "GT",
"source": 2
},
{
"begin": 925,
"end": 947,
"name": "DUP2",
"source": 2
},
{
"begin": 925,
"end": 947,
"name": "DUP4",
"source": 2
},
{
"begin": 925,
"end": 947,
"name": "LT",
"source": 2
},
{
"begin": 902,
"end": 948,
"name": "OR",
"source": 2
},
{
"begin": 899,
"end": 971,
"name": "ISZERO",
"source": 2
},
{
"begin": 899,
"end": 971,
"name": "PUSH [tag]",
"source": 2,
"value": "62"
},
{
"begin": 899,
"end": 971,
"name": "JUMPI",
"source": 2
},
{
"begin": 951,
"end": 969,
"name": "PUSH [tag]",
"source": 2,
"value": "62"
},
{
"begin": 951,
"end": 969,
"name": "PUSH [tag]",
"source": 2,
"value": "46"
},
{
"begin": 951,
"end": 969,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 951,
"end": 969,
"name": "tag",
"source": 2,
"value": "62"
},
{
"begin": 951,
"end": 969,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 991,
"end": 1001,
"name": "DUP2",
"source": 2
},
{
"begin": 987,
"end": 989,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 980,
"end": 1002,
"name": "MSTORE",
"source": 2
},
{
"begin": 1026,
"end": 1028,
"name": "DUP4",
"source": 2
},
{
"begin": 1018,
"end": 1024,
"name": "DUP2",
"source": 2
},
{
"begin": 1011,
"end": 1029,
"name": "MSTORE",
"source": 2
},
{
"begin": 1072,
"end": 1075,
"name": "DUP7",
"source": 2
},
{
"begin": 1065,
"end": 1069,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1060,
"end": 1062,
"name": "DUP6",
"source": 2
},
{
"begin": 1052,
"end": 1058,
"name": "DUP9",
"source": 2
},
{
"begin": 1048,
"end": 1063,
"name": "ADD",
"source": 2
},
{
"begin": 1044,
"end": 1070,
"name": "ADD",
"source": 2
},
{
"begin": 1041,
"end": 1076,
"name": "GT",
"source": 2
},
{
"begin": 1038,
"end": 1093,
"name": "ISZERO",
"source": 2
},
{
"begin": 1038,
"end": 1093,
"name": "PUSH [tag]",
"source": 2,
"value": "63"
},
{
"begin": 1038,
"end": 1093,
"name": "JUMPI",
"source": 2
},
{
"begin": 1089,
"end": 1090,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1086,
"end": 1087,
"name": "DUP1",
"source": 2
},
{
"begin": 1079,
"end": 1091,
"name": "REVERT",
"source": 2
},
{
"begin": 1038,
"end": 1093,
"name": "tag",
"source": 2,
"value": "63"
},
{
"begin": 1038,
"end": 1093,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1153,
"end": 1155,
"name": "DUP4",
"source": 2
},
{
"begin": 1146,
"end": 1150,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1138,
"end": 1144,
"name": "DUP8",
"source": 2
},
{
"begin": 1134,
"end": 1151,
"name": "ADD",
"source": 2
},
{
"begin": 1127,
"end": 1131,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1119,
"end": 1125,
"name": "DUP4",
"source": 2
},
{
"begin": 1115,
"end": 1132,
"name": "ADD",
"source": 2
},
{
"begin": 1102,
"end": 1156,
"name": "CALLDATACOPY",
"source": 2
},
{
"begin": 1200,
"end": 1201,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1193,
"end": 1197,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1188,
"end": 1190,
"name": "DUP6",
"source": 2
},
{
"begin": 1180,
"end": 1186,
"name": "DUP4",
"source": 2
},
{
"begin": 1176,
"end": 1191,
"name": "ADD",
"source": 2
},
{
"begin": 1172,
"end": 1198,
"name": "ADD",
"source": 2
},
{
"begin": 1165,
"end": 1202,
"name": "MSTORE",
"source": 2
},
{
"begin": 1220,
"end": 1226,
"name": "DUP1",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "SWAP5",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 1211,
"end": 1226,
"name": "POP",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "SWAP3",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "SWAP2",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "POP",
"source": 2
},
{
"begin": 513,
"end": 1232,
"name": "POP",
"source": 2
},
{
"begin": 513,
"end": 1232,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1237,
"end": 1627,
"name": "tag",
"source": 2,
"value": "18"
},
{
"begin": 1237,
"end": 1627,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1315,
"end": 1321,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1323,
"end": 1329,
"name": "DUP1",
"source": 2
},
{
"begin": 1376,
"end": 1378,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 1364,
"end": 1373,
"name": "DUP4",
"source": 2
},
{
"begin": 1355,
"end": 1362,
"name": "DUP6",
"source": 2
},
{
"begin": 1351,
"end": 1374,
"name": "SUB",
"source": 2
},
{
"begin": 1347,
"end": 1379,
"name": "SLT",
"source": 2
},
{
"begin": 1344,
"end": 1396,
"name": "ISZERO",
"source": 2
},
{
"begin": 1344,
"end": 1396,
"name": "PUSH [tag]",
"source": 2,
"value": "65"
},
{
"begin": 1344,
"end": 1396,
"name": "JUMPI",
"source": 2
},
{
"begin": 1392,
"end": 1393,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1389,
"end": 1390,
"name": "DUP1",
"source": 2
},
{
"begin": 1382,
"end": 1394,
"name": "REVERT",
"source": 2
},
{
"begin": 1344,
"end": 1396,
"name": "tag",
"source": 2,
"value": "65"
},
{
"begin": 1344,
"end": 1396,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1432,
"end": 1441,
"name": "DUP3",
"source": 2
},
{
"begin": 1419,
"end": 1442,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 1465,
"end": 1483,
"name": "PUSH",
"source": 2,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 1457,
"end": 1463,
"name": "DUP2",
"source": 2
},
{
"begin": 1454,
"end": 1484,
"name": "GT",
"source": 2
},
{
"begin": 1451,
"end": 1501,
"name": "ISZERO",
"source": 2
},
{
"begin": 1451,
"end": 1501,
"name": "PUSH [tag]",
"source": 2,
"value": "66"
},
{
"begin": 1451,
"end": 1501,
"name": "JUMPI",
"source": 2
},
{
"begin": 1497,
"end": 1498,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1494,
"end": 1495,
"name": "DUP1",
"source": 2
},
{
"begin": 1487,
"end": 1499,
"name": "REVERT",
"source": 2
},
{
"begin": 1451,
"end": 1501,
"name": "tag",
"source": 2,
"value": "66"
},
{
"begin": 1451,
"end": 1501,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1520,
"end": 1570,
"name": "PUSH [tag]",
"source": 2,
"value": "67"
},
{
"begin": 1562,
"end": 1569,
"name": "DUP6",
"source": 2
},
{
"begin": 1553,
"end": 1559,
"name": "DUP3",
"source": 2
},
{
"begin": 1542,
"end": 1551,
"name": "DUP7",
"source": 2
},
{
"begin": 1538,
"end": 1560,
"name": "ADD",
"source": 2
},
{
"begin": 1520,
"end": 1570,
"name": "PUSH [tag]",
"source": 2,
"value": "47"
},
{
"begin": 1520,
"end": 1570,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 1520,
"end": 1570,
"name": "tag",
"source": 2,
"value": "67"
},
{
"begin": 1520,
"end": 1570,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1510,
"end": 1570,
"name": "SWAP6",
"source": 2
},
{
"begin": 1617,
"end": 1619,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1602,
"end": 1620,
"name": "SWAP5",
"source": 2
},
{
"begin": 1602,
"end": 1620,
"name": "SWAP1",
"source": 2
},
{
"begin": 1602,
"end": 1620,
"name": "SWAP5",
"source": 2
},
{
"begin": 1602,
"end": 1620,
"name": "ADD",
"source": 2
},
{
"begin": 1589,
"end": 1621,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 1589,
"end": 1621,
"name": "SWAP5",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 1237,
"end": 1627,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1632,
"end": 1954,
"name": "tag",
"source": 2,
"value": "22"
},
{
"begin": 1632,
"end": 1954,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1701,
"end": 1707,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1754,
"end": 1756,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1742,
"end": 1751,
"name": "DUP3",
"source": 2
},
{
"begin": 1733,
"end": 1740,
"name": "DUP5",
"source": 2
},
{
"begin": 1729,
"end": 1752,
"name": "SUB",
"source": 2
},
{
"begin": 1725,
"end": 1757,
"name": "SLT",
"source": 2
},
{
"begin": 1722,
"end": 1774,
"name": "ISZERO",
"source": 2
},
{
"begin": 1722,
"end": 1774,
"name": "PUSH [tag]",
"source": 2,
"value": "69"
},
{
"begin": 1722,
"end": 1774,
"name": "JUMPI",
"source": 2
},
{
"begin": 1770,
"end": 1771,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1767,
"end": 1768,
"name": "DUP1",
"source": 2
},
{
"begin": 1760,
"end": 1772,
"name": "REVERT",
"source": 2
},
{
"begin": 1722,
"end": 1774,
"name": "tag",
"source": 2,
"value": "69"
},
{
"begin": 1722,
"end": 1774,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1810,
"end": 1819,
"name": "DUP2",
"source": 2
},
{
"begin": 1797,
"end": 1820,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 1843,
"end": 1861,
"name": "PUSH",
"source": 2,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 1835,
"end": 1841,
"name": "DUP2",
"source": 2
},
{
"begin": 1832,
"end": 1862,
"name": "GT",
"source": 2
},
{
"begin": 1829,
"end": 1879,
"name": "ISZERO",
"source": 2
},
{
"begin": 1829,
"end": 1879,
"name": "PUSH [tag]",
"source": 2,
"value": "70"
},
{
"begin": 1829,
"end": 1879,
"name": "JUMPI",
"source": 2
},
{
"begin": 1875,
"end": 1876,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1872,
"end": 1873,
"name": "DUP1",
"source": 2
},
{
"begin": 1865,
"end": 1877,
"name": "REVERT",
"source": 2
},
{
"begin": 1829,
"end": 1879,
"name": "tag",
"source": 2,
"value": "70"
},
{
"begin": 1829,
"end": 1879,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1898,
"end": 1948,
"name": "PUSH [tag]",
"source": 2,
"value": "71"
},
{
"begin": 1940,
"end": 1947,
"name": "DUP5",
"source": 2
},
{
"begin": 1931,
"end": 1937,
"name": "DUP3",
"source": 2
},
{
"begin": 1920,
"end": 1929,
"name": "DUP6",
"source": 2
},
{
"begin": 1916,
"end": 1938,
"name": "ADD",
"source": 2
},
{
"begin": 1898,
"end": 1948,
"name": "PUSH [tag]",
"source": 2,
"value": "47"
},
{
"begin": 1898,
"end": 1948,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 1898,
"end": 1948,
"name": "tag",
"source": 2,
"value": "71"
},
{
"begin": 1898,
"end": 1948,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1888,
"end": 1948,
"name": "SWAP5",
"source": 2
},
{
"begin": 1632,
"end": 1954,
"name": "SWAP4",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 1632,
"end": 1954,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1959,
"end": 2209,
"name": "tag",
"source": 2,
"value": "48"
},
{
"begin": 1959,
"end": 2209,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2044,
"end": 2045,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2054,
"end": 2167,
"name": "tag",
"source": 2,
"value": "73"
},
{
"begin": 2054,
"end": 2167,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2068,
"end": 2074,
"name": "DUP4",
"source": 2
},
{
"begin": 2065,
"end": 2066,
"name": "DUP2",
"source": 2
},
{
"begin": 2062,
"end": 2075,
"name": "LT",
"source": 2
},
{
"begin": 2054,
"end": 2167,
"name": "ISZERO",
"source": 2
},
{
"begin": 2054,
"end": 2167,
"name": "PUSH [tag]",
"source": 2,
"value": "75"
},
{
"begin": 2054,
"end": 2167,
"name": "JUMPI",
"source": 2
},
{
"begin": 2144,
"end": 2155,
"name": "DUP2",
"source": 2
},
{
"begin": 2144,
"end": 2155,
"name": "DUP2",
"source": 2
},
{
"begin": 2144,
"end": 2155,
"name": "ADD",
"source": 2
},
{
"begin": 2138,
"end": 2156,
"name": "MLOAD",
"source": 2
},
{
"begin": 2125,
"end": 2136,
"name": "DUP4",
"source": 2
},
{
"begin": 2125,
"end": 2136,
"name": "DUP3",
"source": 2
},
{
"begin": 2125,
"end": 2136,
"name": "ADD",
"source": 2
},
{
"begin": 2118,
"end": 2157,
"name": "MSTORE",
"source": 2
},
{
"begin": 2090,
"end": 2092,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2083,
"end": 2093,
"name": "ADD",
"source": 2
},
{
"begin": 2054,
"end": 2167,
"name": "PUSH [tag]",
"source": 2,
"value": "73"
},
{
"begin": 2054,
"end": 2167,
"name": "JUMP",
"source": 2
},
{
"begin": 2054,
"end": 2167,
"name": "tag",
"source": 2,
"value": "75"
},
{
"begin": 2054,
"end": 2167,
"name": "JUMPDEST",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 2201,
"end": 2202,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2183,
"end": 2199,
"name": "SWAP2",
"source": 2
},
{
"begin": 2183,
"end": 2199,
"name": "ADD",
"source": 2
},
{
"begin": 2176,
"end": 2203,
"name": "MSTORE",
"source": 2
},
{
"begin": 1959,
"end": 2209,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2214,
"end": 2681,
"name": "tag",
"source": 2,
"value": "29"
},
{
"begin": 2214,
"end": 2681,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2391,
"end": 2397,
"name": "DUP3",
"source": 2
},
{
"begin": 2380,
"end": 2389,
"name": "DUP2",
"source": 2
},
{
"begin": 2373,
"end": 2398,
"name": "MSTORE",
"source": 2
},
{
"begin": 2434,
"end": 2436,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 2429,
"end": 2431,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2418,
"end": 2427,
"name": "DUP3",
"source": 2
},
{
"begin": 2414,
"end": 2432,
"name": "ADD",
"source": 2
},
{
"begin": 2407,
"end": 2437,
"name": "MSTORE",
"source": 2
},
{
"begin": 2354,
"end": 2358,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2466,
"end": 2472,
"name": "DUP3",
"source": 2
},
{
"begin": 2460,
"end": 2473,
"name": "MLOAD",
"source": 2
},
{
"begin": 2509,
"end": 2515,
"name": "DUP1",
"source": 2
},
{
"begin": 2504,
"end": 2506,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 2493,
"end": 2502,
"name": "DUP5",
"source": 2
},
{
"begin": 2489,
"end": 2507,
"name": "ADD",
"source": 2
},
{
"begin": 2482,
"end": 2516,
"name": "MSTORE",
"source": 2
},
{
"begin": 2525,
"end": 2604,
"name": "PUSH [tag]",
"source": 2,
"value": "77"
},
{
"begin": 2597,
"end": 2603,
"name": "DUP2",
"source": 2
},
{
"begin": 2592,
"end": 2594,
"name": "PUSH",
"source": 2,
"value": "60"
},
{
"begin": 2581,
"end": 2590,
"name": "DUP6",
"source": 2
},
{
"begin": 2577,
"end": 2595,
"name": "ADD",
"source": 2
},
{
"begin": 2572,
"end": 2574,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2564,
"end": 2570,
"name": "DUP8",
"source": 2
},
{
"begin": 2560,
"end": 2575,
"name": "ADD",
"source": 2
},
{
"begin": 2525,
"end": 2604,
"name": "PUSH [tag]",
"source": 2,
"value": "48"
},
{
"begin": 2525,
"end": 2604,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 2525,
"end": 2604,
"name": "tag",
"source": 2,
"value": "77"
},
{
"begin": 2525,
"end": 2604,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2665,
"end": 2667,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 2644,
"end": 2659,
"name": "ADD",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1F"
},
{
"begin": -1,
"end": -1,
"name": "NOT",
"source": -1
},
{
"begin": 2640,
"end": 2669,
"name": "AND",
"source": 2
},
{
"begin": 2625,
"end": 2670,
"name": "SWAP2",
"source": 2
},
{
"begin": 2625,
"end": 2670,
"name": "SWAP1",
"source": 2
},
{
"begin": 2625,
"end": 2670,
"name": "SWAP2",
"source": 2
},
{
"begin": 2625,
"end": 2670,
"name": "ADD",
"source": 2
},
{
"begin": 2672,
"end": 2674,
"name": "PUSH",
"source": 2,
"value": "60"
},
{
"begin": 2621,
"end": 2675,
"name": "ADD",
"source": 2
},
{
"begin": 2621,
"end": 2675,
"name": "SWAP4",
"source": 2
},
{
"begin": 2214,
"end": 2681,
"name": "SWAP3",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 2214,
"end": 2681,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"name": "tag",
"source": 2,
"value": "41"
},
{
"begin": 2686,
"end": 3066,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2765,
"end": 2766,
"name": "PUSH",
"source": 2,
"value": "1"
},
{
"begin": 2761,
"end": 2773,
"name": "DUP2",
"source": 2
},
{
"begin": 2761,
"end": 2773,
"name": "DUP2",
"source": 2
},
{
"begin": 2761,
"end": 2773,
"name": "SHR",
"source": 2
},
{
"begin": 2761,
"end": 2773,
"name": "SWAP1",
"source": 2
},
{
"begin": 2808,
"end": 2820,
"name": "DUP3",
"source": 2
},
{
"begin": 2808,
"end": 2820,
"name": "AND",
"source": 2
},
{
"begin": 2808,
"end": 2820,
"name": "DUP1",
"source": 2
},
{
"begin": 2829,
"end": 2890,
"name": "PUSH [tag]",
"source": 2,
"value": "79"
},
{
"begin": 2829,
"end": 2890,
"name": "JUMPI",
"source": 2
},
{
"begin": 2883,
"end": 2887,
"name": "PUSH",
"source": 2,
"value": "7F"
},
{
"begin": 2875,
"end": 2881,
"name": "DUP3",
"source": 2
},
{
"begin": 2871,
"end": 2888,
"name": "AND",
"source": 2
},
{
"begin": 2861,
"end": 2888,
"name": "SWAP2",
"source": 2
},
{
"begin": 2861,
"end": 2888,
"name": "POP",
"source": 2
},
{
"begin": 2829,
"end": 2890,
"name": "tag",
"source": 2,
"value": "79"
},
{
"begin": 2829,
"end": 2890,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2936,
"end": 2938,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2928,
"end": 2934,
"name": "DUP3",
"source": 2
},
{
"begin": 2925,
"end": 2939,
"name": "LT",
"source": 2
},
{
"begin": 2905,
"end": 2923,
"name": "DUP2",
"source": 2
},
{
"begin": 2902,
"end": 2940,
"name": "SUB",
"source": 2
},
{
"begin": 2899,
"end": 3060,
"name": "PUSH [tag]",
"source": 2,
"value": "80"
},
{
"begin": 2899,
"end": 3060,
"name": "JUMPI",
"source": 2
},
{
"begin": 2982,
"end": 2992,
"name": "PUSH",
"source": 2,
"value": "4E487B71"
},
{
"begin": 2977,
"end": 2980,
"name": "PUSH",
"source": 2,
"value": "E0"
},
{
"begin": 2973,
"end": 2993,
"name": "SHL",
"source": 2
},
{
"begin": 2970,
"end": 2971,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2963,
"end": 2994,
"name": "MSTORE",
"source": 2
},
{
"begin": 3017,
"end": 3021,
"name": "PUSH",
"source": 2,
"value": "22"
},
{
"begin": 3014,
"end": 3015,
"name": "PUSH",
"source": 2,
"value": "4"
},
{
"begin": 3007,
"end": 3022,
"name": "MSTORE",
"source": 2
},
{
"begin": 3045,
"end": 3049,
"name": "PUSH",
"source": 2,
"value": "24"
},
{
"begin": 3042,
"end": 3043,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 3035,
"end": 3050,
"name": "REVERT",
"source": 2
},
{
"begin": 2899,
"end": 3060,
"name": "tag",
"source": 2,
"value": "80"
},
{
"begin": 2899,
"end": 3060,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2899,
"end": 3060,
"name": "POP",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"name": "SWAP2",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"name": "SWAP1",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"name": "POP",
"source": 2
},
{
"begin": 2686,
"end": 3066,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 3197,
"end": 3742,
"name": "tag",
"source": 2,
"value": "50"
},
{
"begin": 3197,
"end": 3742,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3299,
"end": 3301,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 3294,
"end": 3297,
"name": "DUP3",
"source": 2
},
{
"begin": 3291,
"end": 3302,
"name": "GT",
"source": 2
},
{
"begin": 3288,
"end": 3736,
"name": "ISZERO",
"source": 2
},
{
"begin": 3288,
"end": 3736,
"name": "PUSH [tag]",
"source": 2,
"value": "83"
},
{
"begin": 3288,
"end": 3736,
"name": "JUMPI",
"source": 2
},
{
"begin": 3335,
"end": 3336,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 3360,
"end": 3365,
"name": "DUP2",
"source": 2
},
{
"begin": 3356,
"end": 3358,
"name": "DUP2",
"source": 2
},
{
"begin": 3349,
"end": 3366,
"name": "MSTORE",
"source": 2
},
{
"begin": 3405,
"end": 3409,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 3401,
"end": 3403,
"name": "DUP2",
"source": 2
},
{
"begin": 3391,
"end": 3410,
"name": "KECCAK256",
"source": 2
},
{
"begin": 3475,
"end": 3477,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 3463,
"end": 3473,
"name": "DUP6",
"source": 2
},
{
"begin": 3459,
"end": 3478,
"name": "ADD",
"source": 2
},
{
"begin": 3456,
"end": 3457,
"name": "PUSH",
"source": 2,
"value": "5"
},
{
"begin": 3452,
"end": 3479,
"name": "SHR",
"source": 2
},
{
"begin": 3446,
"end": 3450,
"name": "DUP2",
"source": 2
},
{
"begin": 3442,
"end": 3480,
"name": "ADD",
"source": 2
},
{
"begin": 3511,
"end": 3515,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 3499,
"end": 3509,
"name": "DUP7",
"source": 2
},
{
"begin": 3496,
"end": 3516,
"name": "LT",
"source": 2
},
{
"begin": 3493,
"end": 3540,
"name": "ISZERO",
"source": 2
},
{
"begin": 3493,
"end": 3540,
"name": "PUSH [tag]",
"source": 2,
"value": "84"
},
{
"begin": 3493,
"end": 3540,
"name": "JUMPI",
"source": 2
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": 3534,
"end": 3538,
"name": "DUP1",
"source": 2
},
{
"begin": 3493,
"end": 3540,
"name": "tag",
"source": 2,
"value": "84"
},
{
"begin": 3493,
"end": 3540,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3589,
"end": 3591,
"name": "PUSH",
"source": 2,
"value": "1F"
},
{
"begin": 3584,
"end": 3587,
"name": "DUP6",
"source": 2
},
{
"begin": 3580,
"end": 3592,
"name": "ADD",
"source": 2
},
{
"begin": 3577,
"end": 3578,
"name": "PUSH",
"source": 2,
"value": "5"
},
{
"begin": 3573,
"end": 3593,
"name": "SHR",
"source": 2
},
{
"begin": 3567,
"end": 3571,
"name": "DUP3",
"source": 2
},
{
"begin": 3563,
"end": 3594,
"name": "ADD",
"source": 2
},
{
"begin": 3553,
"end": 3594,
"name": "SWAP2",
"source": 2
},
{
"begin": 3553,
"end": 3594,
"name": "POP",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "tag",
"source": 2,
"value": "85"
},
{
"begin": 3644,
"end": 3726,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3662,
"end": 3664,
"name": "DUP2",
"source": 2
},
{
"begin": 3655,
"end": 3660,
"name": "DUP2",
"source": 2
},
{
"begin": 3652,
"end": 3665,
"name": "LT",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "ISZERO",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "PUSH [tag]",
"source": 2,
"value": "87"
},
{
"begin": 3644,
"end": 3726,
"name": "JUMPI",
"source": 2
},
{
"begin": 3707,
"end": 3724,
"name": "DUP3",
"source": 2
},
{
"begin": 3707,
"end": 3724,
"name": "DUP2",
"source": 2
},
{
"begin": 3707,
"end": 3724,
"name": "SSTORE",
"source": 2
},
{
"begin": 3688,
"end": 3689,
"name": "PUSH",
"source": 2,
"value": "1"
},
{
"begin": 3677,
"end": 3690,
"name": "ADD",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "PUSH [tag]",
"source": 2,
"value": "85"
},
{
"begin": 3644,
"end": 3726,
"name": "JUMP",
"source": 2
},
{
"begin": 3644,
"end": 3726,
"name": "tag",
"source": 2,
"value": "87"
},
{
"begin": 3644,
"end": 3726,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3648,
"end": 3651,
"name": "POP",
"source": 2
},
{
"begin": 3648,
"end": 3651,
"name": "POP",
"source": 2
},
{
"begin": 3648,
"end": 3651,
"name": "POP",
"source": 2
},
{
"begin": 3288,
"end": 3736,
"name": "tag",
"source": 2,
"value": "83"
},
{
"begin": 3288,
"end": 3736,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3197,
"end": 3742,
"name": "POP",
"source": 2
},
{
"begin": 3197,
"end": 3742,
"name": "POP",
"source": 2
},
{
"begin": 3197,
"end": 3742,
"name": "POP",
"source": 2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment