Created
November 23, 2022 23:30
-
-
Save techybolek/a8469c6cec2e09211d6004b0ae52ea5b to your computer and use it in GitHub Desktop.
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.7+commit.e28d00a7.js&optimize=false&runs=200&gist=
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"id": "524569b939880d711428d79e40a73596", | |
"_format": "hh-sol-build-info-1", | |
"solcVersion": "0.8.7", | |
"solcLongVersion": "0.8.7+commit.e28d00a7", | |
"input": { | |
"language": "Solidity", | |
"sources": { | |
"contracts/PriceConsumerV3_TR.sol": { | |
"content": "pragma solidity ^0.8.7;\r\n\r\nimport \"@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol\";\r\n\r\ncontract PriceConsumerV3 {\r\n AggregatorV3Interface internal priceFeed;\r\n\r\n /**\r\n * Network: Goerli\r\n * Aggregator: ETH/USD\r\n * Address: 0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e\r\n */\r\n constructor() {\r\n priceFeed = AggregatorV3Interface(\r\n 0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e\r\n );\r\n }\r\n\r\n /**\r\n * Returns the latest price\r\n */\r\n function getLatestPrice() public view returns (int) {\r\n (\r\n ,\r\n /*uint80 roundID*/ int price /*uint startedAt*/ /*uint timeStamp*/ /*uint80 answeredInRound*/,\r\n ,\r\n ,\r\n\r\n ) = priceFeed.latestRoundData();\r\n return price;\r\n }\r\n}" | |
}, | |
"@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol": { | |
"content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface AggregatorV3Interface {\n function decimals() external view returns (uint8);\n\n function description() external view returns (string memory);\n\n function version() external view returns (uint256);\n\n function getRoundData(uint80 _roundId)\n external\n view\n returns (\n uint80 roundId,\n int256 answer,\n uint256 startedAt,\n uint256 updatedAt,\n uint80 answeredInRound\n );\n\n function latestRoundData()\n external\n view\n returns (\n uint80 roundId,\n int256 answer,\n uint256 startedAt,\n uint256 updatedAt,\n uint80 answeredInRound\n );\n}\n" | |
} | |
}, | |
"settings": { | |
"optimizer": { | |
"enabled": false, | |
"runs": 200 | |
}, | |
"outputSelection": { | |
"*": { | |
"": [ | |
"ast" | |
], | |
"*": [ | |
"abi", | |
"metadata", | |
"devdoc", | |
"userdoc", | |
"storageLayout", | |
"evm.legacyAssembly", | |
"evm.bytecode", | |
"evm.deployedBytecode", | |
"evm.methodIdentifiers", | |
"evm.gasEstimates", | |
"evm.assembly" | |
] | |
} | |
} | |
} | |
}, | |
"output": { | |
"contracts": { | |
"@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol": { | |
"AggregatorV3Interface": { | |
"abi": [ | |
{ | |
"inputs": [], | |
"name": "decimals", | |
"outputs": [ | |
{ | |
"internalType": "uint8", | |
"name": "", | |
"type": "uint8" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "description", | |
"outputs": [ | |
{ | |
"internalType": "string", | |
"name": "", | |
"type": "string" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint80", | |
"name": "_roundId", | |
"type": "uint80" | |
} | |
], | |
"name": "getRoundData", | |
"outputs": [ | |
{ | |
"internalType": "uint80", | |
"name": "roundId", | |
"type": "uint80" | |
}, | |
{ | |
"internalType": "int256", | |
"name": "answer", | |
"type": "int256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "startedAt", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "updatedAt", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint80", | |
"name": "answeredInRound", | |
"type": "uint80" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "latestRoundData", | |
"outputs": [ | |
{ | |
"internalType": "uint80", | |
"name": "roundId", | |
"type": "uint80" | |
}, | |
{ | |
"internalType": "int256", | |
"name": "answer", | |
"type": "int256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "startedAt", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "updatedAt", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint80", | |
"name": "answeredInRound", | |
"type": "uint80" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "version", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
} | |
], | |
"devdoc": { | |
"kind": "dev", | |
"methods": {}, | |
"version": 1 | |
}, | |
"evm": { | |
"assembly": "", | |
"bytecode": { | |
"functionDebugData": {}, | |
"generatedSources": [], | |
"linkReferences": {}, | |
"object": "", | |
"opcodes": "", | |
"sourceMap": "" | |
}, | |
"deployedBytecode": { | |
"functionDebugData": {}, | |
"generatedSources": [], | |
"immutableReferences": {}, | |
"linkReferences": {}, | |
"object": "", | |
"opcodes": "", | |
"sourceMap": "" | |
}, | |
"gasEstimates": null, | |
"legacyAssembly": null, | |
"methodIdentifiers": { | |
"decimals()": "313ce567", | |
"description()": "7284e416", | |
"getRoundData(uint80)": "9a6fc8f5", | |
"latestRoundData()": "feaf968c", | |
"version()": "54fd4d50" | |
} | |
}, | |
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"description\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint80\",\"name\":\"_roundId\",\"type\":\"uint80\"}],\"name\":\"getRoundData\",\"outputs\":[{\"internalType\":\"uint80\",\"name\":\"roundId\",\"type\":\"uint80\"},{\"internalType\":\"int256\",\"name\":\"answer\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"startedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"updatedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint80\",\"name\":\"answeredInRound\",\"type\":\"uint80\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"latestRoundData\",\"outputs\":[{\"internalType\":\"uint80\",\"name\":\"roundId\",\"type\":\"uint80\"},{\"internalType\":\"int256\",\"name\":\"answer\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"startedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"updatedAt\",\"type\":\"uint256\"},{\"internalType\":\"uint80\",\"name\":\"answeredInRound\",\"type\":\"uint80\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol\":\"AggregatorV3Interface\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol\":{\"keccak256\":\"0x6e6e4b0835904509406b070ee173b5bc8f677c19421b76be38aea3b1b3d30846\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3beaa37ee61e4ab615e250fbf01601ae481de843fd0ef55e6b44fd9d5fff8a7\",\"dweb:/ipfs/QmeZUVwd26LzK4Mfp8Zba5JbQNkZFfTzFu1A6FVMMZDg9c\"]}},\"version\":1}", | |
"storageLayout": { | |
"storage": [], | |
"types": null | |
}, | |
"userdoc": { | |
"kind": "user", | |
"methods": {}, | |
"version": 1 | |
} | |
} | |
}, | |
"contracts/PriceConsumerV3_TR.sol": { | |
"PriceConsumerV3": { | |
"abi": [ | |
{ | |
"inputs": [], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [], | |
"name": "getLatestPrice", | |
"outputs": [ | |
{ | |
"internalType": "int256", | |
"name": "", | |
"type": "int256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
} | |
], | |
"devdoc": { | |
"kind": "dev", | |
"methods": {}, | |
"version": 1 | |
}, | |
"evm": { | |
"assembly": " /* \"contracts/PriceConsumerV3_TR.sol\":107:805 contract PriceConsumerV3 {\r... */\n mstore(0x40, 0x80)\n /* \"contracts/PriceConsumerV3_TR.sol\":318:452 constructor() {\r... */\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n /* \"contracts/PriceConsumerV3_TR.sol\":391:433 0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e */\n 0xd4a33860578de61dbabdc8bfdb98fd742fa7028e\n /* \"contracts/PriceConsumerV3_TR.sol\":343:352 priceFeed */\n 0x00\n dup1\n /* \"contracts/PriceConsumerV3_TR.sol\":343:444 priceFeed = AggregatorV3Interface(\r... */\n 0x0100\n exp\n dup2\n sload\n dup2\n 0xffffffffffffffffffffffffffffffffffffffff\n mul\n not\n and\n swap1\n dup4\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/PriceConsumerV3_TR.sol\":107:805 contract PriceConsumerV3 {\r... */\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/PriceConsumerV3_TR.sol\":107:805 contract PriceConsumerV3 {\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x8e15f473\n eq\n tag_3\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/PriceConsumerV3_TR.sol\":511:802 function getLatestPrice() public view returns (int) {\r... */\n tag_3:\n tag_4\n tag_5\n jump\t// in\n tag_4:\n mload(0x40)\n tag_6\n swap2\n swap1\n tag_7\n jump\t// in\n tag_6:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n tag_5:\n /* \"contracts/PriceConsumerV3_TR.sol\":558:561 int */\n 0x00\n /* \"contracts/PriceConsumerV3_TR.sol\":623:632 int price */\n dup1\n /* \"contracts/PriceConsumerV3_TR.sol\":744:753 priceFeed */\n 0x00\n dup1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/PriceConsumerV3_TR.sol\":744:769 priceFeed.latestRoundData */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n 0xfeaf968c\n /* \"contracts/PriceConsumerV3_TR.sol\":744:771 priceFeed.latestRoundData() */\n mload(0x40)\n dup2\n 0xffffffff\n and\n 0xe0\n shl\n dup2\n mstore\n 0x04\n add\n 0xa0\n mload(0x40)\n dup1\n dup4\n sub\n dup2\n dup7\n dup1\n extcodesize\n iszero\n dup1\n iszero\n tag_9\n jumpi\n 0x00\n dup1\n revert\n tag_9:\n pop\n gas\n staticcall\n iszero\n dup1\n iszero\n tag_11\n jumpi\n returndatasize\n 0x00\n dup1\n returndatacopy\n revert(0x00, returndatasize)\n tag_11:\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_12\n swap2\n swap1\n tag_13\n jump\t// in\n tag_12:\n /* \"contracts/PriceConsumerV3_TR.sol\":574:771 (\r... */\n pop\n pop\n pop\n swap2\n pop\n pop\n /* \"contracts/PriceConsumerV3_TR.sol\":789:794 price */\n dup1\n /* \"contracts/PriceConsumerV3_TR.sol\":782:794 return price */\n swap2\n pop\n pop\n /* \"contracts/PriceConsumerV3_TR.sol\":511:802 function getLatestPrice() public view returns (int) {\r... */\n swap1\n jump\t// out\n /* \"#utility.yul\":7:148 */\n tag_15:\n /* \"#utility.yul\":63:68 */\n 0x00\n /* \"#utility.yul\":94:100 */\n dup2\n /* \"#utility.yul\":88:101 */\n mload\n /* \"#utility.yul\":79:101 */\n swap1\n pop\n /* \"#utility.yul\":110:142 */\n tag_17\n /* \"#utility.yul\":136:141 */\n dup2\n /* \"#utility.yul\":110:142 */\n tag_18\n jump\t// in\n tag_17:\n /* \"#utility.yul\":7:148 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":154:297 */\n tag_19:\n /* \"#utility.yul\":211:216 */\n 0x00\n /* \"#utility.yul\":242:248 */\n dup2\n /* \"#utility.yul\":236:249 */\n mload\n /* \"#utility.yul\":227:249 */\n swap1\n pop\n /* \"#utility.yul\":258:291 */\n tag_21\n /* \"#utility.yul\":285:290 */\n dup2\n /* \"#utility.yul\":258:291 */\n tag_22\n jump\t// in\n tag_21:\n /* \"#utility.yul\":154:297 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":303:444 */\n tag_23:\n /* \"#utility.yul\":359:364 */\n 0x00\n /* \"#utility.yul\":390:396 */\n dup2\n /* \"#utility.yul\":384:397 */\n mload\n /* \"#utility.yul\":375:397 */\n swap1\n pop\n /* \"#utility.yul\":406:438 */\n tag_25\n /* \"#utility.yul\":432:437 */\n dup2\n /* \"#utility.yul\":406:438 */\n tag_26\n jump\t// in\n tag_25:\n /* \"#utility.yul\":303:444 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":450:1421 */\n tag_13:\n /* \"#utility.yul\":553:559 */\n 0x00\n /* \"#utility.yul\":561:567 */\n dup1\n /* \"#utility.yul\":569:575 */\n 0x00\n /* \"#utility.yul\":577:583 */\n dup1\n /* \"#utility.yul\":585:591 */\n 0x00\n /* \"#utility.yul\":634:637 */\n 0xa0\n /* \"#utility.yul\":622:631 */\n dup7\n /* \"#utility.yul\":613:620 */\n dup9\n /* \"#utility.yul\":609:632 */\n sub\n /* \"#utility.yul\":605:638 */\n slt\n /* \"#utility.yul\":602:722 */\n iszero\n tag_28\n jumpi\n /* \"#utility.yul\":641:720 */\n tag_29\n tag_30\n jump\t// in\n tag_29:\n /* \"#utility.yul\":602:722 */\n tag_28:\n /* \"#utility.yul\":761:762 */\n 0x00\n /* \"#utility.yul\":786:849 */\n tag_31\n /* \"#utility.yul\":841:848 */\n dup9\n /* \"#utility.yul\":832:838 */\n dup3\n /* \"#utility.yul\":821:830 */\n dup10\n /* \"#utility.yul\":817:839 */\n add\n /* \"#utility.yul\":786:849 */\n tag_23\n jump\t// in\n tag_31:\n /* \"#utility.yul\":776:849 */\n swap6\n pop\n /* \"#utility.yul\":732:859 */\n pop\n /* \"#utility.yul\":898:900 */\n 0x20\n /* \"#utility.yul\":924:987 */\n tag_32\n /* \"#utility.yul\":979:986 */\n dup9\n /* \"#utility.yul\":970:976 */\n dup3\n /* \"#utility.yul\":959:968 */\n dup10\n /* \"#utility.yul\":955:977 */\n add\n /* \"#utility.yul\":924:987 */\n tag_15\n jump\t// in\n tag_32:\n /* \"#utility.yul\":914:987 */\n swap5\n pop\n /* \"#utility.yul\":869:997 */\n pop\n /* \"#utility.yul\":1036:1038 */\n 0x40\n /* \"#utility.yul\":1062:1126 */\n tag_33\n /* \"#utility.yul\":1118:1125 */\n dup9\n /* \"#utility.yul\":1109:1115 */\n dup3\n /* \"#utility.yul\":1098:1107 */\n dup10\n /* \"#utility.yul\":1094:1116 */\n add\n /* \"#utility.yul\":1062:1126 */\n tag_19\n jump\t// in\n tag_33:\n /* \"#utility.yul\":1052:1126 */\n swap4\n pop\n /* \"#utility.yul\":1007:1136 */\n pop\n /* \"#utility.yul\":1175:1177 */\n 0x60\n /* \"#utility.yul\":1201:1265 */\n tag_34\n /* \"#utility.yul\":1257:1264 */\n dup9\n /* \"#utility.yul\":1248:1254 */\n dup3\n /* \"#utility.yul\":1237:1246 */\n dup10\n /* \"#utility.yul\":1233:1255 */\n add\n /* \"#utility.yul\":1201:1265 */\n tag_19\n jump\t// in\n tag_34:\n /* \"#utility.yul\":1191:1265 */\n swap3\n pop\n /* \"#utility.yul\":1146:1275 */\n pop\n /* \"#utility.yul\":1314:1317 */\n 0x80\n /* \"#utility.yul\":1341:1404 */\n tag_35\n /* \"#utility.yul\":1396:1403 */\n dup9\n /* \"#utility.yul\":1387:1393 */\n dup3\n /* \"#utility.yul\":1376:1385 */\n dup10\n /* \"#utility.yul\":1372:1394 */\n add\n /* \"#utility.yul\":1341:1404 */\n tag_23\n jump\t// in\n tag_35:\n /* \"#utility.yul\":1331:1404 */\n swap2\n pop\n /* \"#utility.yul\":1285:1414 */\n pop\n /* \"#utility.yul\":450:1421 */\n swap3\n swap6\n pop\n swap3\n swap6\n swap1\n swap4\n pop\n jump\t// out\n /* \"#utility.yul\":1427:1542 */\n tag_36:\n /* \"#utility.yul\":1512:1535 */\n tag_38\n /* \"#utility.yul\":1529:1534 */\n dup2\n /* \"#utility.yul\":1512:1535 */\n tag_39\n jump\t// in\n tag_38:\n /* \"#utility.yul\":1507:1510 */\n dup3\n /* \"#utility.yul\":1500:1536 */\n mstore\n /* \"#utility.yul\":1427:1542 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1548:1766 */\n tag_7:\n /* \"#utility.yul\":1639:1643 */\n 0x00\n /* \"#utility.yul\":1677:1679 */\n 0x20\n /* \"#utility.yul\":1666:1675 */\n dup3\n /* \"#utility.yul\":1662:1680 */\n add\n /* \"#utility.yul\":1654:1680 */\n swap1\n pop\n /* \"#utility.yul\":1690:1759 */\n tag_41\n /* \"#utility.yul\":1756:1757 */\n 0x00\n /* \"#utility.yul\":1745:1754 */\n dup4\n /* \"#utility.yul\":1741:1758 */\n add\n /* \"#utility.yul\":1732:1738 */\n dup5\n /* \"#utility.yul\":1690:1759 */\n tag_36\n jump\t// in\n tag_41:\n /* \"#utility.yul\":1548:1766 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1853:1929 */\n tag_39:\n /* \"#utility.yul\":1889:1896 */\n 0x00\n /* \"#utility.yul\":1918:1923 */\n dup2\n /* \"#utility.yul\":1907:1923 */\n swap1\n pop\n /* \"#utility.yul\":1853:1929 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1935:2012 */\n tag_45:\n /* \"#utility.yul\":1972:1979 */\n 0x00\n /* \"#utility.yul\":2001:2006 */\n dup2\n /* \"#utility.yul\":1990:2006 */\n swap1\n pop\n /* \"#utility.yul\":1935:2012 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2018:2123 */\n tag_47:\n /* \"#utility.yul\":2054:2061 */\n 0x00\n /* \"#utility.yul\":2094:2116 */\n 0xffffffffffffffffffff\n /* \"#utility.yul\":2087:2092 */\n dup3\n /* \"#utility.yul\":2083:2117 */\n and\n /* \"#utility.yul\":2072:2117 */\n swap1\n pop\n /* \"#utility.yul\":2018:2123 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2252:2369 */\n tag_30:\n /* \"#utility.yul\":2361:2362 */\n 0x00\n /* \"#utility.yul\":2358:2359 */\n dup1\n /* \"#utility.yul\":2351:2363 */\n revert\n /* \"#utility.yul\":2375:2495 */\n tag_18:\n /* \"#utility.yul\":2447:2470 */\n tag_53\n /* \"#utility.yul\":2464:2469 */\n dup2\n /* \"#utility.yul\":2447:2470 */\n tag_39\n jump\t// in\n tag_53:\n /* \"#utility.yul\":2440:2445 */\n dup2\n /* \"#utility.yul\":2437:2471 */\n eq\n /* \"#utility.yul\":2427:2489 */\n tag_54\n jumpi\n /* \"#utility.yul\":2485:2486 */\n 0x00\n /* \"#utility.yul\":2482:2483 */\n dup1\n /* \"#utility.yul\":2475:2487 */\n revert\n /* \"#utility.yul\":2427:2489 */\n tag_54:\n /* \"#utility.yul\":2375:2495 */\n pop\n jump\t// out\n /* \"#utility.yul\":2501:2623 */\n tag_22:\n /* \"#utility.yul\":2574:2598 */\n tag_56\n /* \"#utility.yul\":2592:2597 */\n dup2\n /* \"#utility.yul\":2574:2598 */\n tag_45\n jump\t// in\n tag_56:\n /* \"#utility.yul\":2567:2572 */\n dup2\n /* \"#utility.yul\":2564:2599 */\n eq\n /* \"#utility.yul\":2554:2617 */\n tag_57\n jumpi\n /* \"#utility.yul\":2613:2614 */\n 0x00\n /* \"#utility.yul\":2610:2611 */\n dup1\n /* \"#utility.yul\":2603:2615 */\n revert\n /* \"#utility.yul\":2554:2617 */\n tag_57:\n /* \"#utility.yul\":2501:2623 */\n pop\n jump\t// out\n /* \"#utility.yul\":2629:2749 */\n tag_26:\n /* \"#utility.yul\":2701:2724 */\n tag_59\n /* \"#utility.yul\":2718:2723 */\n dup2\n /* \"#utility.yul\":2701:2724 */\n tag_47\n jump\t// in\n tag_59:\n /* \"#utility.yul\":2694:2699 */\n dup2\n /* \"#utility.yul\":2691:2725 */\n eq\n /* \"#utility.yul\":2681:2743 */\n tag_60\n jumpi\n /* \"#utility.yul\":2739:2740 */\n 0x00\n /* \"#utility.yul\":2736:2737 */\n dup1\n /* \"#utility.yul\":2729:2741 */\n revert\n /* \"#utility.yul\":2681:2743 */\n tag_60:\n /* \"#utility.yul\":2629:2749 */\n pop\n jump\t// out\n\n auxdata: 0xa2646970667358221220d24743cf2e50e69d064fe1364008e0e82cf0ba9ec4c2c5b6aeae839daf9e1bcb64736f6c63430008070033\n}\n", | |
"bytecode": { | |
"functionDebugData": { | |
"@_62": { | |
"entryPoint": null, | |
"id": 62, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
} | |
}, | |
"generatedSources": [], | |
"linkReferences": {}, | |
"object": "608060405234801561001057600080fd5b5073d4a33860578de61dbabdc8bfdb98fd742fa7028e6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061028a806100746000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80638e15f47314610030575b600080fd5b61003861004e565b60405161004591906101c5565b60405180910390f35b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a06040518083038186803b1580156100b757600080fd5b505afa1580156100cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ef919061013b565b5050509150508091505090565b60008151905061010b8161020f565b92915050565b60008151905061012081610226565b92915050565b6000815190506101358161023d565b92915050565b600080600080600060a086880312156101575761015661020a565b5b600061016588828901610126565b9550506020610176888289016100fc565b945050604061018788828901610111565b935050606061019888828901610111565b92505060806101a988828901610126565b9150509295509295909350565b6101bf816101e0565b82525050565b60006020820190506101da60008301846101b6565b92915050565b6000819050919050565b6000819050919050565b600069ffffffffffffffffffff82169050919050565b600080fd5b610218816101e0565b811461022357600080fd5b50565b61022f816101ea565b811461023a57600080fd5b50565b610246816101f4565b811461025157600080fd5b5056fea2646970667358221220d24743cf2e50e69d064fe1364008e0e82cf0ba9ec4c2c5b6aeae839daf9e1bcb64736f6c63430008070033", | |
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH20 0xD4A33860578DE61DBABDC8BFDB98FD742FA7028E PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x28A DUP1 PUSH2 0x74 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 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8E15F473 EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x38 PUSH2 0x4E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x1C5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xFEAF968C PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xCB 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 0xEF SWAP2 SWAP1 PUSH2 0x13B JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x10B DUP2 PUSH2 0x20F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x120 DUP2 PUSH2 0x226 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x135 DUP2 PUSH2 0x23D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x157 JUMPI PUSH2 0x156 PUSH2 0x20A JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x165 DUP9 DUP3 DUP10 ADD PUSH2 0x126 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x176 DUP9 DUP3 DUP10 ADD PUSH2 0xFC JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x187 DUP9 DUP3 DUP10 ADD PUSH2 0x111 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x198 DUP9 DUP3 DUP10 ADD PUSH2 0x111 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x1A9 DUP9 DUP3 DUP10 ADD PUSH2 0x126 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH2 0x1BF DUP2 PUSH2 0x1E0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1DA PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1B6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x218 DUP2 PUSH2 0x1E0 JUMP JUMPDEST DUP2 EQ PUSH2 0x223 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x22F DUP2 PUSH2 0x1EA JUMP JUMPDEST DUP2 EQ PUSH2 0x23A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x246 DUP2 PUSH2 0x1F4 JUMP JUMPDEST DUP2 EQ PUSH2 0x251 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD2 SELFBALANCE NUMBER 0xCF 0x2E POP 0xE6 SWAP14 MOD 0x4F 0xE1 CALLDATASIZE BLOCKHASH ADDMOD 0xE0 0xE8 0x2C CREATE 0xBA SWAP15 0xC4 0xC2 0xC5 0xB6 0xAE 0xAE DUP4 SWAP14 0xAF SWAP15 SHL 0xCB PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ", | |
"sourceMap": "107:698:1:-:0;;;318:134;;;;;;;;;;391:42;343:9;;:101;;;;;;;;;;;;;;;;;;107:698;;;;;;" | |
}, | |
"deployedBytecode": { | |
"functionDebugData": { | |
"@getLatestPrice_77": { | |
"entryPoint": 78, | |
"id": 77, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_int256_fromMemory": { | |
"entryPoint": 252, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_uint256_fromMemory": { | |
"entryPoint": 273, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_uint80_fromMemory": { | |
"entryPoint": 294, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory": { | |
"entryPoint": 315, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 5 | |
}, | |
"abi_encode_t_int256_to_t_int256_fromStack": { | |
"entryPoint": 438, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed": { | |
"entryPoint": 453, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"allocate_unbounded": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_int256": { | |
"entryPoint": 480, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint256": { | |
"entryPoint": 490, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint80": { | |
"entryPoint": 500, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { | |
"entryPoint": 522, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_int256": { | |
"entryPoint": 527, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_uint256": { | |
"entryPoint": 550, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_uint80": { | |
"entryPoint": 573, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
} | |
}, | |
"generatedSources": [ | |
{ | |
"ast": { | |
"nodeType": "YulBlock", | |
"src": "0:2752:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "69:79:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "79:22:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "94:6:2" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "88:5:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "88:13:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "79:5:2" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "136:5:2" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_int256", | |
"nodeType": "YulIdentifier", | |
"src": "110:25:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "110:32:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "110:32:2" | |
} | |
] | |
}, | |
"name": "abi_decode_t_int256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "47:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "55:3:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "63:5:2", | |
"type": "" | |
} | |
], | |
"src": "7:141:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "217:80:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "227:22:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "242:6:2" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "236:5:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "236:13:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "227:5:2" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "285:5:2" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "258:26:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "258:33:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "258:33:2" | |
} | |
] | |
}, | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "195:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "203:3:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "211:5:2", | |
"type": "" | |
} | |
], | |
"src": "154:143:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "365:79:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "375:22:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "390:6:2" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "384:5:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "384:13:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "375:5:2" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "432:5:2" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_uint80", | |
"nodeType": "YulIdentifier", | |
"src": "406:25:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "406:32:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "406:32:2" | |
} | |
] | |
}, | |
"name": "abi_decode_t_uint80_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "343:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "351:3:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "359:5:2", | |
"type": "" | |
} | |
], | |
"src": "303:141:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "592:829:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "639:83:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "641:77:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "641:79:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "641:79:2" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "613:7:2" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "622:9:2" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "609:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "609:23:2" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "634:3:2", | |
"type": "", | |
"value": "160" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "605:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "605:33:2" | |
}, | |
"nodeType": "YulIf", | |
"src": "602:120:2" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "732:127:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "747:15:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "761:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "751:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "776:73:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "821:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "832:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "817:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "817:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "841:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint80_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "786:30:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "786:63:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "776:6:2" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "869:128:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "884:16:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "898:2:2", | |
"type": "", | |
"value": "32" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "888:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "914:73:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "959:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "970:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "955:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "955:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "979:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_int256_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "924:30:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "924:63:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "914:6:2" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1007:129:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1022:16:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1036:2:2", | |
"type": "", | |
"value": "64" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1026:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1052:74:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1098:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1109:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1094:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1094:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1118:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1062:31:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1062:64:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value2", | |
"nodeType": "YulIdentifier", | |
"src": "1052:6:2" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1146:129:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1161:16:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1175:2:2", | |
"type": "", | |
"value": "96" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1165:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1191:74:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1237:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1248:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1233:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1233:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1257:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1201:31:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1201:64:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value3", | |
"nodeType": "YulIdentifier", | |
"src": "1191:6:2" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1285:129:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1300:17:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1314:3:2", | |
"type": "", | |
"value": "128" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1304:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1331:73:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1376:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1387:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1372:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1372:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1396:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint80_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1341:30:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1341:63:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value4", | |
"nodeType": "YulIdentifier", | |
"src": "1331:6:2" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "530:9:2", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "541:7:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "553:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "561:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "value2", | |
"nodeType": "YulTypedName", | |
"src": "569:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "value3", | |
"nodeType": "YulTypedName", | |
"src": "577:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "value4", | |
"nodeType": "YulTypedName", | |
"src": "585:6:2", | |
"type": "" | |
} | |
], | |
"src": "450:971:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1490:52:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "1507:3:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1529:5:2" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_int256", | |
"nodeType": "YulIdentifier", | |
"src": "1512:16:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1512:23:2" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "1500:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1500:36:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1500:36:2" | |
} | |
] | |
}, | |
"name": "abi_encode_t_int256_to_t_int256_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1478:5:2", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "1485:3:2", | |
"type": "" | |
} | |
], | |
"src": "1427:115:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1644:122:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1654:26:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1666:9:2" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1677:2:2", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1662:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1662:18:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "1654:4:2" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "1732:6:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1745:9:2" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1756:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1741:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1741:17:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_int256_to_t_int256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "1690:41:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1690:69:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1690:69:2" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "1616:9:2", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1628:6:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "1639:4:2", | |
"type": "" | |
} | |
], | |
"src": "1548:218:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1812:35:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1822:19:2", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1838:2:2", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "1832:5:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1832:9:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "1822:6:2" | |
} | |
] | |
} | |
] | |
}, | |
"name": "allocate_unbounded", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "1805:6:2", | |
"type": "" | |
} | |
], | |
"src": "1772:75:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1897:32:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1907:16:2", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1918:5:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1907:7:2" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_int256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1879:5:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1889:7:2", | |
"type": "" | |
} | |
], | |
"src": "1853:76:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1980:32:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1990:16:2", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2001:5:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1990:7:2" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1962:5:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1972:7:2", | |
"type": "" | |
} | |
], | |
"src": "1935:77:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2062:61:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2072:45:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2087:5:2" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2094:22:2", | |
"type": "", | |
"value": "0xffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "2083:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2083:34:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "2072:7:2" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint80", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2044:5:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "2054:7:2", | |
"type": "" | |
} | |
], | |
"src": "2018:105:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2218:28:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2235:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2238:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2228:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2228:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2228:12:2" | |
} | |
] | |
}, | |
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", | |
"nodeType": "YulFunctionDefinition", | |
"src": "2129:117:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2341:28:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2358:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2361:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2351:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2351:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2351:12:2" | |
} | |
] | |
}, | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulFunctionDefinition", | |
"src": "2252:117:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2417:78:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2473:16:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2482:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2485:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2475:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2475:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2475:12:2" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2440:5:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2464:5:2" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_int256", | |
"nodeType": "YulIdentifier", | |
"src": "2447:16:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2447:23:2" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "2437:2:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2437:34:2" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "2430:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2430:42:2" | |
}, | |
"nodeType": "YulIf", | |
"src": "2427:62:2" | |
} | |
] | |
}, | |
"name": "validator_revert_t_int256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2410:5:2", | |
"type": "" | |
} | |
], | |
"src": "2375:120:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2544:79:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2601:16:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2610:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2613:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2603:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2603:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2603:12:2" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2567:5:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2592:5:2" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2574:17:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2574:24:2" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "2564:2:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2564:35:2" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "2557:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2557:43:2" | |
}, | |
"nodeType": "YulIf", | |
"src": "2554:63:2" | |
} | |
] | |
}, | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2537:5:2", | |
"type": "" | |
} | |
], | |
"src": "2501:122:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2671:78:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2727:16:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2736:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2739:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2729:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2729:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2729:12:2" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2694:5:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2718:5:2" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint80", | |
"nodeType": "YulIdentifier", | |
"src": "2701:16:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2701:23:2" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "2691:2:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2691:34:2" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "2684:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2684:42:2" | |
}, | |
"nodeType": "YulIf", | |
"src": "2681:62:2" | |
} | |
] | |
}, | |
"name": "validator_revert_t_uint80", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2664:5:2", | |
"type": "" | |
} | |
], | |
"src": "2629:120:2" | |
} | |
] | |
}, | |
"contents": "{\n\n function abi_decode_t_int256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_int256(value)\n }\n\n function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_t_uint80_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint80(value)\n }\n\n function abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint80_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_int256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value4 := abi_decode_t_uint80_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_int256_to_t_int256_fromStack(value, pos) {\n mstore(pos, cleanup_t_int256(value))\n }\n\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_int256_to_t_int256_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function cleanup_t_int256(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint80(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffff)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function validator_revert_t_int256(value) {\n if iszero(eq(value, cleanup_t_int256(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint80(value) {\n if iszero(eq(value, cleanup_t_uint80(value))) { revert(0, 0) }\n }\n\n}\n", | |
"id": 2, | |
"language": "Yul", | |
"name": "#utility.yul" | |
} | |
], | |
"immutableReferences": {}, | |
"linkReferences": {}, | |
"object": "608060405234801561001057600080fd5b506004361061002b5760003560e01c80638e15f47314610030575b600080fd5b61003861004e565b60405161004591906101c5565b60405180910390f35b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a06040518083038186803b1580156100b757600080fd5b505afa1580156100cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ef919061013b565b5050509150508091505090565b60008151905061010b8161020f565b92915050565b60008151905061012081610226565b92915050565b6000815190506101358161023d565b92915050565b600080600080600060a086880312156101575761015661020a565b5b600061016588828901610126565b9550506020610176888289016100fc565b945050604061018788828901610111565b935050606061019888828901610111565b92505060806101a988828901610126565b9150509295509295909350565b6101bf816101e0565b82525050565b60006020820190506101da60008301846101b6565b92915050565b6000819050919050565b6000819050919050565b600069ffffffffffffffffffff82169050919050565b600080fd5b610218816101e0565b811461022357600080fd5b50565b61022f816101ea565b811461023a57600080fd5b50565b610246816101f4565b811461025157600080fd5b5056fea2646970667358221220d24743cf2e50e69d064fe1364008e0e82cf0ba9ec4c2c5b6aeae839daf9e1bcb64736f6c63430008070033", | |
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8E15F473 EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x38 PUSH2 0x4E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x1C5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xFEAF968C PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xCB 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 0xEF SWAP2 SWAP1 PUSH2 0x13B JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x10B DUP2 PUSH2 0x20F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x120 DUP2 PUSH2 0x226 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x135 DUP2 PUSH2 0x23D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x157 JUMPI PUSH2 0x156 PUSH2 0x20A JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x165 DUP9 DUP3 DUP10 ADD PUSH2 0x126 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x176 DUP9 DUP3 DUP10 ADD PUSH2 0xFC JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x187 DUP9 DUP3 DUP10 ADD PUSH2 0x111 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x198 DUP9 DUP3 DUP10 ADD PUSH2 0x111 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x1A9 DUP9 DUP3 DUP10 ADD PUSH2 0x126 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH2 0x1BF DUP2 PUSH2 0x1E0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1DA PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1B6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x218 DUP2 PUSH2 0x1E0 JUMP JUMPDEST DUP2 EQ PUSH2 0x223 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x22F DUP2 PUSH2 0x1EA JUMP JUMPDEST DUP2 EQ PUSH2 0x23A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x246 DUP2 PUSH2 0x1F4 JUMP JUMPDEST DUP2 EQ PUSH2 0x251 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD2 SELFBALANCE NUMBER 0xCF 0x2E POP 0xE6 SWAP14 MOD 0x4F 0xE1 CALLDATASIZE BLOCKHASH ADDMOD 0xE0 0xE8 0x2C CREATE 0xBA SWAP15 0xC4 0xC2 0xC5 0xB6 0xAE 0xAE DUP4 SWAP14 0xAF SWAP15 SHL 0xCB PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ", | |
"sourceMap": "107:698:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;511:291;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;558:3;623:9;744;;;;;;;;;;:25;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;574:197;;;;;;789:5;782:12;;;511:291;:::o;7:141:2:-;63:5;94:6;88:13;79:22;;110:32;136:5;110:32;:::i;:::-;7:141;;;;:::o;154:143::-;211:5;242:6;236:13;227:22;;258:33;285:5;258:33;:::i;:::-;154:143;;;;:::o;303:141::-;359:5;390:6;384:13;375:22;;406:32;432:5;406:32;:::i;:::-;303:141;;;;:::o;450:971::-;553:6;561;569;577;585;634:3;622:9;613:7;609:23;605:33;602:120;;;641:79;;:::i;:::-;602:120;761:1;786:63;841:7;832:6;821:9;817:22;786:63;:::i;:::-;776:73;;732:127;898:2;924:63;979:7;970:6;959:9;955:22;924:63;:::i;:::-;914:73;;869:128;1036:2;1062:64;1118:7;1109:6;1098:9;1094:22;1062:64;:::i;:::-;1052:74;;1007:129;1175:2;1201:64;1257:7;1248:6;1237:9;1233:22;1201:64;:::i;:::-;1191:74;;1146:129;1314:3;1341:63;1396:7;1387:6;1376:9;1372:22;1341:63;:::i;:::-;1331:73;;1285:129;450:971;;;;;;;;:::o;1427:115::-;1512:23;1529:5;1512:23;:::i;:::-;1507:3;1500:36;1427:115;;:::o;1548:218::-;1639:4;1677:2;1666:9;1662:18;1654:26;;1690:69;1756:1;1745:9;1741:17;1732:6;1690:69;:::i;:::-;1548:218;;;;:::o;1853:76::-;1889:7;1918:5;1907:16;;1853:76;;;:::o;1935:77::-;1972:7;2001:5;1990:16;;1935:77;;;:::o;2018:105::-;2054:7;2094:22;2087:5;2083:34;2072:45;;2018:105;;;:::o;2252:117::-;2361:1;2358;2351:12;2375:120;2447:23;2464:5;2447:23;:::i;:::-;2440:5;2437:34;2427:62;;2485:1;2482;2475:12;2427:62;2375:120;:::o;2501:122::-;2574:24;2592:5;2574:24;:::i;:::-;2567:5;2564:35;2554:63;;2613:1;2610;2603:12;2554:63;2501:122;:::o;2629:120::-;2701:23;2718:5;2701:23;:::i;:::-;2694:5;2691:34;2681:62;;2739:1;2736;2729:12;2681:62;2629:120;:::o" | |
}, | |
"gasEstimates": { | |
"creation": { | |
"codeDepositCost": "130000", | |
"executionCost": "24444", | |
"totalCost": "154444" | |
}, | |
"external": { | |
"getLatestPrice()": "infinite" | |
} | |
}, | |
"legacyAssembly": { | |
".code": [ | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "80" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "CALLVALUE", | |
"source": 1 | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "tag", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 318, | |
"end": 452, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 391, | |
"end": 433, | |
"name": "PUSH", | |
"source": 1, | |
"value": "D4A33860578DE61DBABDC8BFDB98FD742FA7028E" | |
}, | |
{ | |
"begin": 343, | |
"end": 352, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 343, | |
"end": 352, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "PUSH", | |
"source": 1, | |
"value": "100" | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "EXP", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "SLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "MUL", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "NOT", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "MUL", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "OR", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "SSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 343, | |
"end": 444, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH #[$]", | |
"source": 1, | |
"value": "0000000000000000000000000000000000000000000000000000000000000000" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH [$]", | |
"source": 1, | |
"value": "0000000000000000000000000000000000000000000000000000000000000000" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "CODECOPY", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "RETURN", | |
"source": 1 | |
} | |
], | |
".data": { | |
"0": { | |
".auxdata": "a2646970667358221220d24743cf2e50e69d064fe1364008e0e82cf0ba9ec4c2c5b6aeae839daf9e1bcb64736f6c63430008070033", | |
".code": [ | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "80" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "CALLVALUE", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "tag", | |
"source": 1, | |
"value": "1" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "4" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "CALLDATASIZE", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "LT", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "2" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "CALLDATALOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "E0" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "SHR", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "8E15F473" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "EQ", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "3" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "tag", | |
"source": 1, | |
"value": "2" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 107, | |
"end": 805, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "tag", | |
"source": 1, | |
"value": "3" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "4" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "5" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "JUMP", | |
"source": 1, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "tag", | |
"source": 1, | |
"value": "4" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "PUSH", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "6" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "7" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "JUMP", | |
"source": 1, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "tag", | |
"source": 1, | |
"value": "6" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "PUSH", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "SUB", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "RETURN", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "tag", | |
"source": 1, | |
"value": "5" | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 558, | |
"end": 561, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 623, | |
"end": 632, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "SLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "PUSH", | |
"source": 1, | |
"value": "100" | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "EXP", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "DIV", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 744, | |
"end": 753, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 769, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 744, | |
"end": 769, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 769, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FEAF968C" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "FFFFFFFF" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "E0" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "SHL", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "4" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "A0" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP4", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "SUB", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP7", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "EXTCODESIZE", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "9" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "tag", | |
"source": 1, | |
"value": "9" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "GAS", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "STATICCALL", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "ISZERO", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "11" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "JUMPI", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "RETURNDATASIZE", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "RETURNDATACOPY", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "RETURNDATASIZE", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "0" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "REVERT", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "tag", | |
"source": 1, | |
"value": "11" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "MLOAD", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "RETURNDATASIZE", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "NOT", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "1F" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "AND", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP3", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH", | |
"source": 1, | |
"value": "40" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "MSTORE", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "DUP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "ADD", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "12" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "PUSH [tag]", | |
"source": 1, | |
"value": "13" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "JUMP", | |
"source": 1, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "tag", | |
"source": 1, | |
"value": "12" | |
}, | |
{ | |
"begin": 744, | |
"end": 771, | |
"name": "JUMPDEST", | |
"source": 1 | |
}, | |
{ | |
"begin": 574, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 574, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 574, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 574, | |
"end": 771, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 574, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 574, | |
"end": 771, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 789, | |
"end": 794, | |
"name": "DUP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 782, | |
"end": 794, | |
"name": "SWAP2", | |
"source": 1 | |
}, | |
{ | |
"begin": 782, | |
"end": 794, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 782, | |
"end": 794, | |
"name": "POP", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "SWAP1", | |
"source": 1 | |
}, | |
{ | |
"begin": 511, | |
"end": 802, | |
"name": "JUMP", | |
"source": 1, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 7, | |
"end": 148, | |
"name": "tag", | |
"source": 2, | |
"value": "15" | |
}, | |
{ | |
"begin": 7, | |
"end": 148, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 63, | |
"end": 68, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 94, | |
"end": 100, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 88, | |
"end": 101, | |
"name": "MLOAD", | |
"source": 2 | |
}, | |
{ | |
"begin": 79, | |
"end": 101, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 79, | |
"end": 101, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 110, | |
"end": 142, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "17" | |
}, | |
{ | |
"begin": 136, | |
"end": 141, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 110, | |
"end": 142, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "18" | |
}, | |
{ | |
"begin": 110, | |
"end": 142, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 110, | |
"end": 142, | |
"name": "tag", | |
"source": 2, | |
"value": "17" | |
}, | |
{ | |
"begin": 110, | |
"end": 142, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 7, | |
"end": 148, | |
"name": "SWAP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 7, | |
"end": 148, | |
"name": "SWAP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 7, | |
"end": 148, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 7, | |
"end": 148, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 7, | |
"end": 148, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 154, | |
"end": 297, | |
"name": "tag", | |
"source": 2, | |
"value": "19" | |
}, | |
{ | |
"begin": 154, | |
"end": 297, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 211, | |
"end": 216, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 242, | |
"end": 248, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 236, | |
"end": 249, | |
"name": "MLOAD", | |
"source": 2 | |
}, | |
{ | |
"begin": 227, | |
"end": 249, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 227, | |
"end": 249, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 258, | |
"end": 291, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "21" | |
}, | |
{ | |
"begin": 285, | |
"end": 290, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 258, | |
"end": 291, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "22" | |
}, | |
{ | |
"begin": 258, | |
"end": 291, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 258, | |
"end": 291, | |
"name": "tag", | |
"source": 2, | |
"value": "21" | |
}, | |
{ | |
"begin": 258, | |
"end": 291, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 154, | |
"end": 297, | |
"name": "SWAP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 154, | |
"end": 297, | |
"name": "SWAP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 154, | |
"end": 297, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 154, | |
"end": 297, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 154, | |
"end": 297, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 303, | |
"end": 444, | |
"name": "tag", | |
"source": 2, | |
"value": "23" | |
}, | |
{ | |
"begin": 303, | |
"end": 444, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 359, | |
"end": 364, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 390, | |
"end": 396, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 384, | |
"end": 397, | |
"name": "MLOAD", | |
"source": 2 | |
}, | |
{ | |
"begin": 375, | |
"end": 397, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 375, | |
"end": 397, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 406, | |
"end": 438, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "25" | |
}, | |
{ | |
"begin": 432, | |
"end": 437, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 406, | |
"end": 438, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "26" | |
}, | |
{ | |
"begin": 406, | |
"end": 438, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 406, | |
"end": 438, | |
"name": "tag", | |
"source": 2, | |
"value": "25" | |
}, | |
{ | |
"begin": 406, | |
"end": 438, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 303, | |
"end": 444, | |
"name": "SWAP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 303, | |
"end": 444, | |
"name": "SWAP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 303, | |
"end": 444, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 303, | |
"end": 444, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 303, | |
"end": 444, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "tag", | |
"source": 2, | |
"value": "13" | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 553, | |
"end": 559, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 561, | |
"end": 567, | |
"name": "DUP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 569, | |
"end": 575, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 577, | |
"end": 583, | |
"name": "DUP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 585, | |
"end": 591, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 634, | |
"end": 637, | |
"name": "PUSH", | |
"source": 2, | |
"value": "A0" | |
}, | |
{ | |
"begin": 622, | |
"end": 631, | |
"name": "DUP7", | |
"source": 2 | |
}, | |
{ | |
"begin": 613, | |
"end": 620, | |
"name": "DUP9", | |
"source": 2 | |
}, | |
{ | |
"begin": 609, | |
"end": 632, | |
"name": "SUB", | |
"source": 2 | |
}, | |
{ | |
"begin": 605, | |
"end": 638, | |
"name": "SLT", | |
"source": 2 | |
}, | |
{ | |
"begin": 602, | |
"end": 722, | |
"name": "ISZERO", | |
"source": 2 | |
}, | |
{ | |
"begin": 602, | |
"end": 722, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "28" | |
}, | |
{ | |
"begin": 602, | |
"end": 722, | |
"name": "JUMPI", | |
"source": 2 | |
}, | |
{ | |
"begin": 641, | |
"end": 720, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "29" | |
}, | |
{ | |
"begin": 641, | |
"end": 720, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "30" | |
}, | |
{ | |
"begin": 641, | |
"end": 720, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 641, | |
"end": 720, | |
"name": "tag", | |
"source": 2, | |
"value": "29" | |
}, | |
{ | |
"begin": 641, | |
"end": 720, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 602, | |
"end": 722, | |
"name": "tag", | |
"source": 2, | |
"value": "28" | |
}, | |
{ | |
"begin": 602, | |
"end": 722, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 761, | |
"end": 762, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 786, | |
"end": 849, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "31" | |
}, | |
{ | |
"begin": 841, | |
"end": 848, | |
"name": "DUP9", | |
"source": 2 | |
}, | |
{ | |
"begin": 832, | |
"end": 838, | |
"name": "DUP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 821, | |
"end": 830, | |
"name": "DUP10", | |
"source": 2 | |
}, | |
{ | |
"begin": 817, | |
"end": 839, | |
"name": "ADD", | |
"source": 2 | |
}, | |
{ | |
"begin": 786, | |
"end": 849, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "23" | |
}, | |
{ | |
"begin": 786, | |
"end": 849, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 786, | |
"end": 849, | |
"name": "tag", | |
"source": 2, | |
"value": "31" | |
}, | |
{ | |
"begin": 786, | |
"end": 849, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 776, | |
"end": 849, | |
"name": "SWAP6", | |
"source": 2 | |
}, | |
{ | |
"begin": 776, | |
"end": 849, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 732, | |
"end": 859, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 898, | |
"end": 900, | |
"name": "PUSH", | |
"source": 2, | |
"value": "20" | |
}, | |
{ | |
"begin": 924, | |
"end": 987, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "32" | |
}, | |
{ | |
"begin": 979, | |
"end": 986, | |
"name": "DUP9", | |
"source": 2 | |
}, | |
{ | |
"begin": 970, | |
"end": 976, | |
"name": "DUP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 959, | |
"end": 968, | |
"name": "DUP10", | |
"source": 2 | |
}, | |
{ | |
"begin": 955, | |
"end": 977, | |
"name": "ADD", | |
"source": 2 | |
}, | |
{ | |
"begin": 924, | |
"end": 987, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "15" | |
}, | |
{ | |
"begin": 924, | |
"end": 987, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 924, | |
"end": 987, | |
"name": "tag", | |
"source": 2, | |
"value": "32" | |
}, | |
{ | |
"begin": 924, | |
"end": 987, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 914, | |
"end": 987, | |
"name": "SWAP5", | |
"source": 2 | |
}, | |
{ | |
"begin": 914, | |
"end": 987, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 869, | |
"end": 997, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1036, | |
"end": 1038, | |
"name": "PUSH", | |
"source": 2, | |
"value": "40" | |
}, | |
{ | |
"begin": 1062, | |
"end": 1126, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "33" | |
}, | |
{ | |
"begin": 1118, | |
"end": 1125, | |
"name": "DUP9", | |
"source": 2 | |
}, | |
{ | |
"begin": 1109, | |
"end": 1115, | |
"name": "DUP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 1098, | |
"end": 1107, | |
"name": "DUP10", | |
"source": 2 | |
}, | |
{ | |
"begin": 1094, | |
"end": 1116, | |
"name": "ADD", | |
"source": 2 | |
}, | |
{ | |
"begin": 1062, | |
"end": 1126, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "19" | |
}, | |
{ | |
"begin": 1062, | |
"end": 1126, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 1062, | |
"end": 1126, | |
"name": "tag", | |
"source": 2, | |
"value": "33" | |
}, | |
{ | |
"begin": 1062, | |
"end": 1126, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 1052, | |
"end": 1126, | |
"name": "SWAP4", | |
"source": 2 | |
}, | |
{ | |
"begin": 1052, | |
"end": 1126, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1007, | |
"end": 1136, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1175, | |
"end": 1177, | |
"name": "PUSH", | |
"source": 2, | |
"value": "60" | |
}, | |
{ | |
"begin": 1201, | |
"end": 1265, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "34" | |
}, | |
{ | |
"begin": 1257, | |
"end": 1264, | |
"name": "DUP9", | |
"source": 2 | |
}, | |
{ | |
"begin": 1248, | |
"end": 1254, | |
"name": "DUP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 1237, | |
"end": 1246, | |
"name": "DUP10", | |
"source": 2 | |
}, | |
{ | |
"begin": 1233, | |
"end": 1255, | |
"name": "ADD", | |
"source": 2 | |
}, | |
{ | |
"begin": 1201, | |
"end": 1265, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "19" | |
}, | |
{ | |
"begin": 1201, | |
"end": 1265, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 1201, | |
"end": 1265, | |
"name": "tag", | |
"source": 2, | |
"value": "34" | |
}, | |
{ | |
"begin": 1201, | |
"end": 1265, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 1191, | |
"end": 1265, | |
"name": "SWAP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 1191, | |
"end": 1265, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1146, | |
"end": 1275, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1314, | |
"end": 1317, | |
"name": "PUSH", | |
"source": 2, | |
"value": "80" | |
}, | |
{ | |
"begin": 1341, | |
"end": 1404, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "35" | |
}, | |
{ | |
"begin": 1396, | |
"end": 1403, | |
"name": "DUP9", | |
"source": 2 | |
}, | |
{ | |
"begin": 1387, | |
"end": 1393, | |
"name": "DUP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 1376, | |
"end": 1385, | |
"name": "DUP10", | |
"source": 2 | |
}, | |
{ | |
"begin": 1372, | |
"end": 1394, | |
"name": "ADD", | |
"source": 2 | |
}, | |
{ | |
"begin": 1341, | |
"end": 1404, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "23" | |
}, | |
{ | |
"begin": 1341, | |
"end": 1404, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 1341, | |
"end": 1404, | |
"name": "tag", | |
"source": 2, | |
"value": "35" | |
}, | |
{ | |
"begin": 1341, | |
"end": 1404, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 1331, | |
"end": 1404, | |
"name": "SWAP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 1331, | |
"end": 1404, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1285, | |
"end": 1414, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "SWAP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "SWAP6", | |
"source": 2 | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "SWAP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "SWAP6", | |
"source": 2 | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "SWAP4", | |
"source": 2 | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 450, | |
"end": 1421, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 1427, | |
"end": 1542, | |
"name": "tag", | |
"source": 2, | |
"value": "36" | |
}, | |
{ | |
"begin": 1427, | |
"end": 1542, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 1512, | |
"end": 1535, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "38" | |
}, | |
{ | |
"begin": 1529, | |
"end": 1534, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 1512, | |
"end": 1535, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "39" | |
}, | |
{ | |
"begin": 1512, | |
"end": 1535, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 1512, | |
"end": 1535, | |
"name": "tag", | |
"source": 2, | |
"value": "38" | |
}, | |
{ | |
"begin": 1512, | |
"end": 1535, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 1507, | |
"end": 1510, | |
"name": "DUP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 1500, | |
"end": 1536, | |
"name": "MSTORE", | |
"source": 2 | |
}, | |
{ | |
"begin": 1427, | |
"end": 1542, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1427, | |
"end": 1542, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1427, | |
"end": 1542, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 1548, | |
"end": 1766, | |
"name": "tag", | |
"source": 2, | |
"value": "7" | |
}, | |
{ | |
"begin": 1548, | |
"end": 1766, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 1639, | |
"end": 1643, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 1677, | |
"end": 1679, | |
"name": "PUSH", | |
"source": 2, | |
"value": "20" | |
}, | |
{ | |
"begin": 1666, | |
"end": 1675, | |
"name": "DUP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 1662, | |
"end": 1680, | |
"name": "ADD", | |
"source": 2 | |
}, | |
{ | |
"begin": 1654, | |
"end": 1680, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 1654, | |
"end": 1680, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1690, | |
"end": 1759, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "41" | |
}, | |
{ | |
"begin": 1756, | |
"end": 1757, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 1745, | |
"end": 1754, | |
"name": "DUP4", | |
"source": 2 | |
}, | |
{ | |
"begin": 1741, | |
"end": 1758, | |
"name": "ADD", | |
"source": 2 | |
}, | |
{ | |
"begin": 1732, | |
"end": 1738, | |
"name": "DUP5", | |
"source": 2 | |
}, | |
{ | |
"begin": 1690, | |
"end": 1759, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "36" | |
}, | |
{ | |
"begin": 1690, | |
"end": 1759, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 1690, | |
"end": 1759, | |
"name": "tag", | |
"source": 2, | |
"value": "41" | |
}, | |
{ | |
"begin": 1690, | |
"end": 1759, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 1548, | |
"end": 1766, | |
"name": "SWAP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 1548, | |
"end": 1766, | |
"name": "SWAP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 1548, | |
"end": 1766, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1548, | |
"end": 1766, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1548, | |
"end": 1766, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 1853, | |
"end": 1929, | |
"name": "tag", | |
"source": 2, | |
"value": "39" | |
}, | |
{ | |
"begin": 1853, | |
"end": 1929, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 1889, | |
"end": 1896, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 1918, | |
"end": 1923, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 1907, | |
"end": 1923, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 1907, | |
"end": 1923, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1853, | |
"end": 1929, | |
"name": "SWAP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 1853, | |
"end": 1929, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 1853, | |
"end": 1929, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1853, | |
"end": 1929, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 1935, | |
"end": 2012, | |
"name": "tag", | |
"source": 2, | |
"value": "45" | |
}, | |
{ | |
"begin": 1935, | |
"end": 2012, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 1972, | |
"end": 1979, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 2001, | |
"end": 2006, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 1990, | |
"end": 2006, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 1990, | |
"end": 2006, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1935, | |
"end": 2012, | |
"name": "SWAP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 1935, | |
"end": 2012, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 1935, | |
"end": 2012, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 1935, | |
"end": 2012, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 2018, | |
"end": 2123, | |
"name": "tag", | |
"source": 2, | |
"value": "47" | |
}, | |
{ | |
"begin": 2018, | |
"end": 2123, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2054, | |
"end": 2061, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 2094, | |
"end": 2116, | |
"name": "PUSH", | |
"source": 2, | |
"value": "FFFFFFFFFFFFFFFFFFFF" | |
}, | |
{ | |
"begin": 2087, | |
"end": 2092, | |
"name": "DUP3", | |
"source": 2 | |
}, | |
{ | |
"begin": 2083, | |
"end": 2117, | |
"name": "AND", | |
"source": 2 | |
}, | |
{ | |
"begin": 2072, | |
"end": 2117, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 2072, | |
"end": 2117, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 2018, | |
"end": 2123, | |
"name": "SWAP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 2018, | |
"end": 2123, | |
"name": "SWAP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 2018, | |
"end": 2123, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 2018, | |
"end": 2123, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 2252, | |
"end": 2369, | |
"name": "tag", | |
"source": 2, | |
"value": "30" | |
}, | |
{ | |
"begin": 2252, | |
"end": 2369, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2361, | |
"end": 2362, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 2358, | |
"end": 2359, | |
"name": "DUP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 2351, | |
"end": 2363, | |
"name": "REVERT", | |
"source": 2 | |
}, | |
{ | |
"begin": 2375, | |
"end": 2495, | |
"name": "tag", | |
"source": 2, | |
"value": "18" | |
}, | |
{ | |
"begin": 2375, | |
"end": 2495, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2447, | |
"end": 2470, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "53" | |
}, | |
{ | |
"begin": 2464, | |
"end": 2469, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 2447, | |
"end": 2470, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "39" | |
}, | |
{ | |
"begin": 2447, | |
"end": 2470, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 2447, | |
"end": 2470, | |
"name": "tag", | |
"source": 2, | |
"value": "53" | |
}, | |
{ | |
"begin": 2447, | |
"end": 2470, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2440, | |
"end": 2445, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 2437, | |
"end": 2471, | |
"name": "EQ", | |
"source": 2 | |
}, | |
{ | |
"begin": 2427, | |
"end": 2489, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "54" | |
}, | |
{ | |
"begin": 2427, | |
"end": 2489, | |
"name": "JUMPI", | |
"source": 2 | |
}, | |
{ | |
"begin": 2485, | |
"end": 2486, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 2482, | |
"end": 2483, | |
"name": "DUP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 2475, | |
"end": 2487, | |
"name": "REVERT", | |
"source": 2 | |
}, | |
{ | |
"begin": 2427, | |
"end": 2489, | |
"name": "tag", | |
"source": 2, | |
"value": "54" | |
}, | |
{ | |
"begin": 2427, | |
"end": 2489, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2375, | |
"end": 2495, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 2375, | |
"end": 2495, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 2501, | |
"end": 2623, | |
"name": "tag", | |
"source": 2, | |
"value": "22" | |
}, | |
{ | |
"begin": 2501, | |
"end": 2623, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2574, | |
"end": 2598, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "56" | |
}, | |
{ | |
"begin": 2592, | |
"end": 2597, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 2574, | |
"end": 2598, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "45" | |
}, | |
{ | |
"begin": 2574, | |
"end": 2598, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 2574, | |
"end": 2598, | |
"name": "tag", | |
"source": 2, | |
"value": "56" | |
}, | |
{ | |
"begin": 2574, | |
"end": 2598, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2567, | |
"end": 2572, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 2564, | |
"end": 2599, | |
"name": "EQ", | |
"source": 2 | |
}, | |
{ | |
"begin": 2554, | |
"end": 2617, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "57" | |
}, | |
{ | |
"begin": 2554, | |
"end": 2617, | |
"name": "JUMPI", | |
"source": 2 | |
}, | |
{ | |
"begin": 2613, | |
"end": 2614, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 2610, | |
"end": 2611, | |
"name": "DUP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 2603, | |
"end": 2615, | |
"name": "REVERT", | |
"source": 2 | |
}, | |
{ | |
"begin": 2554, | |
"end": 2617, | |
"name": "tag", | |
"source": 2, | |
"value": "57" | |
}, | |
{ | |
"begin": 2554, | |
"end": 2617, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2501, | |
"end": 2623, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 2501, | |
"end": 2623, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
}, | |
{ | |
"begin": 2629, | |
"end": 2749, | |
"name": "tag", | |
"source": 2, | |
"value": "26" | |
}, | |
{ | |
"begin": 2629, | |
"end": 2749, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2701, | |
"end": 2724, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "59" | |
}, | |
{ | |
"begin": 2718, | |
"end": 2723, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 2701, | |
"end": 2724, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "47" | |
}, | |
{ | |
"begin": 2701, | |
"end": 2724, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[in]" | |
}, | |
{ | |
"begin": 2701, | |
"end": 2724, | |
"name": "tag", | |
"source": 2, | |
"value": "59" | |
}, | |
{ | |
"begin": 2701, | |
"end": 2724, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2694, | |
"end": 2699, | |
"name": "DUP2", | |
"source": 2 | |
}, | |
{ | |
"begin": 2691, | |
"end": 2725, | |
"name": "EQ", | |
"source": 2 | |
}, | |
{ | |
"begin": 2681, | |
"end": 2743, | |
"name": "PUSH [tag]", | |
"source": 2, | |
"value": "60" | |
}, | |
{ | |
"begin": 2681, | |
"end": 2743, | |
"name": "JUMPI", | |
"source": 2 | |
}, | |
{ | |
"begin": 2739, | |
"end": 2740, | |
"name": "PUSH", | |
"source": 2, | |
"value": "0" | |
}, | |
{ | |
"begin": 2736, | |
"end": 2737, | |
"name": "DUP1", | |
"source": 2 | |
}, | |
{ | |
"begin": 2729, | |
"end": 2741, | |
"name": "REVERT", | |
"source": 2 | |
}, | |
{ | |
"begin": 2681, | |
"end": 2743, | |
"name": "tag", | |
"source": 2, | |
"value": "60" | |
}, | |
{ | |
"begin": 2681, | |
"end": 2743, | |
"name": "JUMPDEST", | |
"source": 2 | |
}, | |
{ | |
"begin": 2629, | |
"end": 2749, | |
"name": "POP", | |
"source": 2 | |
}, | |
{ | |
"begin": 2629, | |
"end": 2749, | |
"name": "JUMP", | |
"source": 2, | |
"value": "[out]" | |
} | |
] | |
} | |
} | |
}, | |
"methodIdentifiers": { | |
"getLatestPrice()": "8e15f473" | |
} | |
}, | |
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"getLatestPrice\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"constructor\":{\"notice\":\"Network: Goerli Aggregator: ETH/USD Address: 0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e\"},\"getLatestPrice()\":{\"notice\":\"Returns the latest price\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/PriceConsumerV3_TR.sol\":\"PriceConsumerV3\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol\":{\"keccak256\":\"0x6e6e4b0835904509406b070ee173b5bc8f677c19421b76be38aea3b1b3d30846\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3beaa37ee61e4ab615e250fbf01601ae481de843fd0ef55e6b44fd9d5fff8a7\",\"dweb:/ipfs/QmeZUVwd26LzK4Mfp8Zba5JbQNkZFfTzFu1A6FVMMZDg9c\"]},\"contracts/PriceConsumerV3_TR.sol\":{\"keccak256\":\"0x97229bbf411cf7875923a35daa756c38bb246b9ddfd0d11e4898408d5d8caca4\",\"urls\":[\"bzz-raw://632fda501c562beb824be5f355d3915d06a444636bd3f6c781db29c95cfb743d\",\"dweb:/ipfs/Qmc9xRfSYXHEWkZqj813AqxrSfL7yNQyQmbYLkfPcCogXG\"]}},\"version\":1}", | |
"storageLayout": { | |
"storage": [ | |
{ | |
"astId": 51, | |
"contract": "contracts/PriceConsumerV3_TR.sol:PriceConsumerV3", | |
"label": "priceFeed", | |
"offset": 0, | |
"slot": "0", | |
"type": "t_contract(AggregatorV3Interface)45" | |
} | |
], | |
"types": { | |
"t_contract(AggregatorV3Interface)45": { | |
"encoding": "inplace", | |
"label": "contract AggregatorV3Interface", | |
"numberOfBytes": "20" | |
} | |
} | |
}, | |
"userdoc": { | |
"kind": "user", | |
"methods": { | |
"constructor": { | |
"notice": "Network: Goerli Aggregator: ETH/USD Address: 0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e" | |
}, | |
"getLatestPrice()": { | |
"notice": "Returns the latest price" | |
} | |
}, | |
"version": 1 | |
} | |
} | |
} | |
}, | |
"errors": [ | |
{ | |
"component": "general", | |
"errorCode": "1878", | |
"formattedMessage": "Warning: SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: <SPDX-License>\" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.\n--> contracts/PriceConsumerV3_TR.sol\n\n", | |
"message": "SPDX license identifier not provided in source file. Before publishing, consider adding a comment containing \"SPDX-License-Identifier: <SPDX-License>\" to each source file. Use \"SPDX-License-Identifier: UNLICENSED\" for non-open-source code. Please see https://spdx.org for more information.", | |
"severity": "warning", | |
"sourceLocation": { | |
"end": -1, | |
"file": "contracts/PriceConsumerV3_TR.sol", | |
"start": -1 | |
}, | |
"type": "Warning" | |
} | |
], | |
"sources": { | |
"@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol": { | |
"ast": { | |
"absolutePath": "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol", | |
"exportedSymbols": { | |
"AggregatorV3Interface": [ | |
45 | |
] | |
}, | |
"id": 46, | |
"license": "MIT", | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 1, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.8", | |
".0" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "32:23:0" | |
}, | |
{ | |
"abstract": false, | |
"baseContracts": [], | |
"contractDependencies": [], | |
"contractKind": "interface", | |
"fullyImplemented": false, | |
"id": 45, | |
"linearizedBaseContracts": [ | |
45 | |
], | |
"name": "AggregatorV3Interface", | |
"nameLocation": "67:21:0", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"functionSelector": "313ce567", | |
"id": 6, | |
"implemented": false, | |
"kind": "function", | |
"modifiers": [], | |
"name": "decimals", | |
"nameLocation": "102:8:0", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 2, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "110:2:0" | |
}, | |
"returnParameters": { | |
"id": 5, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 4, | |
"mutability": "mutable", | |
"name": "", | |
"nameLocation": "-1:-1:-1", | |
"nodeType": "VariableDeclaration", | |
"scope": 6, | |
"src": "136:5:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint8", | |
"typeString": "uint8" | |
}, | |
"typeName": { | |
"id": 3, | |
"name": "uint8", | |
"nodeType": "ElementaryTypeName", | |
"src": "136:5:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint8", | |
"typeString": "uint8" | |
} | |
}, | |
"visibility": "internal" | |
} | |
], | |
"src": "135:7:0" | |
}, | |
"scope": 45, | |
"src": "93:50:0", | |
"stateMutability": "view", | |
"virtual": false, | |
"visibility": "external" | |
}, | |
{ | |
"functionSelector": "7284e416", | |
"id": 11, | |
"implemented": false, | |
"kind": "function", | |
"modifiers": [], | |
"name": "description", | |
"nameLocation": "156:11:0", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 7, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "167:2:0" | |
}, | |
"returnParameters": { | |
"id": 10, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 9, | |
"mutability": "mutable", | |
"name": "", | |
"nameLocation": "-1:-1:-1", | |
"nodeType": "VariableDeclaration", | |
"scope": 11, | |
"src": "193:13:0", | |
"stateVariable": false, | |
"storageLocation": "memory", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_memory_ptr", | |
"typeString": "string" | |
}, | |
"typeName": { | |
"id": 8, | |
"name": "string", | |
"nodeType": "ElementaryTypeName", | |
"src": "193:6:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_string_storage_ptr", | |
"typeString": "string" | |
} | |
}, | |
"visibility": "internal" | |
} | |
], | |
"src": "192:15:0" | |
}, | |
"scope": 45, | |
"src": "147:61:0", | |
"stateMutability": "view", | |
"virtual": false, | |
"visibility": "external" | |
}, | |
{ | |
"functionSelector": "54fd4d50", | |
"id": 16, | |
"implemented": false, | |
"kind": "function", | |
"modifiers": [], | |
"name": "version", | |
"nameLocation": "221:7:0", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 12, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "228:2:0" | |
}, | |
"returnParameters": { | |
"id": 15, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 14, | |
"mutability": "mutable", | |
"name": "", | |
"nameLocation": "-1:-1:-1", | |
"nodeType": "VariableDeclaration", | |
"scope": 16, | |
"src": "254:7:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 13, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "254:7:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"visibility": "internal" | |
} | |
], | |
"src": "253:9:0" | |
}, | |
"scope": 45, | |
"src": "212:51:0", | |
"stateMutability": "view", | |
"virtual": false, | |
"visibility": "external" | |
}, | |
{ | |
"functionSelector": "9a6fc8f5", | |
"id": 31, | |
"implemented": false, | |
"kind": "function", | |
"modifiers": [], | |
"name": "getRoundData", | |
"nameLocation": "276:12:0", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 19, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 18, | |
"mutability": "mutable", | |
"name": "_roundId", | |
"nameLocation": "296:8:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 31, | |
"src": "289:15:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
}, | |
"typeName": { | |
"id": 17, | |
"name": "uint80", | |
"nodeType": "ElementaryTypeName", | |
"src": "289:6:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
} | |
}, | |
"visibility": "internal" | |
} | |
], | |
"src": "288:17:0" | |
}, | |
"returnParameters": { | |
"id": 30, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 21, | |
"mutability": "mutable", | |
"name": "roundId", | |
"nameLocation": "355:7:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 31, | |
"src": "348:14:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
}, | |
"typeName": { | |
"id": 20, | |
"name": "uint80", | |
"nodeType": "ElementaryTypeName", | |
"src": "348:6:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 23, | |
"mutability": "mutable", | |
"name": "answer", | |
"nameLocation": "377:6:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 31, | |
"src": "370:13:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_int256", | |
"typeString": "int256" | |
}, | |
"typeName": { | |
"id": 22, | |
"name": "int256", | |
"nodeType": "ElementaryTypeName", | |
"src": "370:6:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_int256", | |
"typeString": "int256" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 25, | |
"mutability": "mutable", | |
"name": "startedAt", | |
"nameLocation": "399:9:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 31, | |
"src": "391:17:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 24, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "391:7:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 27, | |
"mutability": "mutable", | |
"name": "updatedAt", | |
"nameLocation": "424:9:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 31, | |
"src": "416:17:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 26, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "416:7:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 29, | |
"mutability": "mutable", | |
"name": "answeredInRound", | |
"nameLocation": "448:15:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 31, | |
"src": "441:22:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
}, | |
"typeName": { | |
"id": 28, | |
"name": "uint80", | |
"nodeType": "ElementaryTypeName", | |
"src": "441:6:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
} | |
}, | |
"visibility": "internal" | |
} | |
], | |
"src": "340:129:0" | |
}, | |
"scope": 45, | |
"src": "267:203:0", | |
"stateMutability": "view", | |
"virtual": false, | |
"visibility": "external" | |
}, | |
{ | |
"functionSelector": "feaf968c", | |
"id": 44, | |
"implemented": false, | |
"kind": "function", | |
"modifiers": [], | |
"name": "latestRoundData", | |
"nameLocation": "483:15:0", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 32, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "498:2:0" | |
}, | |
"returnParameters": { | |
"id": 43, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 34, | |
"mutability": "mutable", | |
"name": "roundId", | |
"nameLocation": "550:7:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 44, | |
"src": "543:14:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
}, | |
"typeName": { | |
"id": 33, | |
"name": "uint80", | |
"nodeType": "ElementaryTypeName", | |
"src": "543:6:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 36, | |
"mutability": "mutable", | |
"name": "answer", | |
"nameLocation": "572:6:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 44, | |
"src": "565:13:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_int256", | |
"typeString": "int256" | |
}, | |
"typeName": { | |
"id": 35, | |
"name": "int256", | |
"nodeType": "ElementaryTypeName", | |
"src": "565:6:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_int256", | |
"typeString": "int256" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 38, | |
"mutability": "mutable", | |
"name": "startedAt", | |
"nameLocation": "594:9:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 44, | |
"src": "586:17:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 37, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "586:7:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 40, | |
"mutability": "mutable", | |
"name": "updatedAt", | |
"nameLocation": "619:9:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 44, | |
"src": "611:17:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
}, | |
"typeName": { | |
"id": 39, | |
"name": "uint256", | |
"nodeType": "ElementaryTypeName", | |
"src": "611:7:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint256", | |
"typeString": "uint256" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"constant": false, | |
"id": 42, | |
"mutability": "mutable", | |
"name": "answeredInRound", | |
"nameLocation": "643:15:0", | |
"nodeType": "VariableDeclaration", | |
"scope": 44, | |
"src": "636:22:0", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
}, | |
"typeName": { | |
"id": 41, | |
"name": "uint80", | |
"nodeType": "ElementaryTypeName", | |
"src": "636:6:0", | |
"typeDescriptions": { | |
"typeIdentifier": "t_uint80", | |
"typeString": "uint80" | |
} | |
}, | |
"visibility": "internal" | |
} | |
], | |
"src": "535:129:0" | |
}, | |
"scope": 45, | |
"src": "474:191:0", | |
"stateMutability": "view", | |
"virtual": false, | |
"visibility": "external" | |
} | |
], | |
"scope": 46, | |
"src": "57:610:0", | |
"usedErrors": [] | |
} | |
], | |
"src": "32:636:0" | |
}, | |
"id": 0 | |
}, | |
"contracts/PriceConsumerV3_TR.sol": { | |
"ast": { | |
"absolutePath": "contracts/PriceConsumerV3_TR.sol", | |
"exportedSymbols": { | |
"AggregatorV3Interface": [ | |
45 | |
], | |
"PriceConsumerV3": [ | |
78 | |
] | |
}, | |
"id": 79, | |
"nodeType": "SourceUnit", | |
"nodes": [ | |
{ | |
"id": 47, | |
"literals": [ | |
"solidity", | |
"^", | |
"0.8", | |
".7" | |
], | |
"nodeType": "PragmaDirective", | |
"src": "0:23:1" | |
}, | |
{ | |
"absolutePath": "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol", | |
"file": "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol", | |
"id": 48, | |
"nameLocation": "-1:-1:-1", | |
"nodeType": "ImportDirective", | |
"scope": 79, | |
"sourceUnit": 46, | |
"src": "27:76:1", | |
"symbolAliases": [], | |
"unitAlias": "" | |
}, | |
{ | |
"abstract": false, | |
"baseContracts": [], | |
"contractDependencies": [], | |
"contractKind": "contract", | |
"fullyImplemented": true, | |
"id": 78, | |
"linearizedBaseContracts": [ | |
78 | |
], | |
"name": "PriceConsumerV3", | |
"nameLocation": "116:15:1", | |
"nodeType": "ContractDefinition", | |
"nodes": [ | |
{ | |
"constant": false, | |
"id": 51, | |
"mutability": "mutable", | |
"name": "priceFeed", | |
"nameLocation": "170:9:1", | |
"nodeType": "VariableDeclaration", | |
"scope": 78, | |
"src": "139:40:1", | |
"stateVariable": true, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45", | |
"typeString": "contract AggregatorV3Interface" | |
}, | |
"typeName": { | |
"id": 50, | |
"nodeType": "UserDefinedTypeName", | |
"pathNode": { | |
"id": 49, | |
"name": "AggregatorV3Interface", | |
"nodeType": "IdentifierPath", | |
"referencedDeclaration": 45, | |
"src": "139:21:1" | |
}, | |
"referencedDeclaration": 45, | |
"src": "139:21:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45", | |
"typeString": "contract AggregatorV3Interface" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
{ | |
"body": { | |
"id": 61, | |
"nodeType": "Block", | |
"src": "332:120:1", | |
"statements": [ | |
{ | |
"expression": { | |
"id": 59, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"leftHandSide": { | |
"id": 55, | |
"name": "priceFeed", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 51, | |
"src": "343:9:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45", | |
"typeString": "contract AggregatorV3Interface" | |
} | |
}, | |
"nodeType": "Assignment", | |
"operator": "=", | |
"rightHandSide": { | |
"arguments": [ | |
{ | |
"hexValue": "307844346133333836303537384465363144424162446338424664623938464437343266413730323865", | |
"id": 57, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "number", | |
"lValueRequested": false, | |
"nodeType": "Literal", | |
"src": "391:42:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
}, | |
"value": "0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e" | |
} | |
], | |
"expression": { | |
"argumentTypes": [ | |
{ | |
"typeIdentifier": "t_address", | |
"typeString": "address" | |
} | |
], | |
"id": 56, | |
"name": "AggregatorV3Interface", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 45, | |
"src": "355:21:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_type$_t_contract$_AggregatorV3Interface_$45_$", | |
"typeString": "type(contract AggregatorV3Interface)" | |
} | |
}, | |
"id": 58, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": true, | |
"kind": "typeConversion", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "355:89:1", | |
"tryCall": false, | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45", | |
"typeString": "contract AggregatorV3Interface" | |
} | |
}, | |
"src": "343:101:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45", | |
"typeString": "contract AggregatorV3Interface" | |
} | |
}, | |
"id": 60, | |
"nodeType": "ExpressionStatement", | |
"src": "343:101:1" | |
} | |
] | |
}, | |
"documentation": { | |
"id": 52, | |
"nodeType": "StructuredDocumentation", | |
"src": "188:124:1", | |
"text": " Network: Goerli\n Aggregator: ETH/USD\n Address: 0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e" | |
}, | |
"id": 62, | |
"implemented": true, | |
"kind": "constructor", | |
"modifiers": [], | |
"name": "", | |
"nameLocation": "-1:-1:-1", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 53, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "329:2:1" | |
}, | |
"returnParameters": { | |
"id": 54, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "332:0:1" | |
}, | |
"scope": 78, | |
"src": "318:134:1", | |
"stateMutability": "nonpayable", | |
"virtual": false, | |
"visibility": "public" | |
}, | |
{ | |
"body": { | |
"id": 76, | |
"nodeType": "Block", | |
"src": "563:239:1", | |
"statements": [ | |
{ | |
"assignments": [ | |
null, | |
69, | |
null, | |
null, | |
null | |
], | |
"declarations": [ | |
null, | |
{ | |
"constant": false, | |
"id": 69, | |
"mutability": "mutable", | |
"name": "price", | |
"nameLocation": "627:5:1", | |
"nodeType": "VariableDeclaration", | |
"scope": 76, | |
"src": "623:9:1", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_int256", | |
"typeString": "int256" | |
}, | |
"typeName": { | |
"id": 68, | |
"name": "int", | |
"nodeType": "ElementaryTypeName", | |
"src": "623:3:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_int256", | |
"typeString": "int256" | |
} | |
}, | |
"visibility": "internal" | |
}, | |
null, | |
null, | |
null | |
], | |
"id": 73, | |
"initialValue": { | |
"arguments": [], | |
"expression": { | |
"argumentTypes": [], | |
"expression": { | |
"id": 70, | |
"name": "priceFeed", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 51, | |
"src": "744:9:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45", | |
"typeString": "contract AggregatorV3Interface" | |
} | |
}, | |
"id": 71, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"lValueRequested": false, | |
"memberName": "latestRoundData", | |
"nodeType": "MemberAccess", | |
"referencedDeclaration": 44, | |
"src": "744:25:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_function_external_view$__$returns$_t_uint80_$_t_int256_$_t_uint256_$_t_uint256_$_t_uint80_$", | |
"typeString": "function () view external returns (uint80,int256,uint256,uint256,uint80)" | |
} | |
}, | |
"id": 72, | |
"isConstant": false, | |
"isLValue": false, | |
"isPure": false, | |
"kind": "functionCall", | |
"lValueRequested": false, | |
"names": [], | |
"nodeType": "FunctionCall", | |
"src": "744:27:1", | |
"tryCall": false, | |
"typeDescriptions": { | |
"typeIdentifier": "t_tuple$_t_uint80_$_t_int256_$_t_uint256_$_t_uint256_$_t_uint80_$", | |
"typeString": "tuple(uint80,int256,uint256,uint256,uint80)" | |
} | |
}, | |
"nodeType": "VariableDeclarationStatement", | |
"src": "574:197:1" | |
}, | |
{ | |
"expression": { | |
"id": 74, | |
"name": "price", | |
"nodeType": "Identifier", | |
"overloadedDeclarations": [], | |
"referencedDeclaration": 69, | |
"src": "789:5:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_int256", | |
"typeString": "int256" | |
} | |
}, | |
"functionReturnParameters": 67, | |
"id": 75, | |
"nodeType": "Return", | |
"src": "782:12:1" | |
} | |
] | |
}, | |
"documentation": { | |
"id": 63, | |
"nodeType": "StructuredDocumentation", | |
"src": "460:45:1", | |
"text": " Returns the latest price" | |
}, | |
"functionSelector": "8e15f473", | |
"id": 77, | |
"implemented": true, | |
"kind": "function", | |
"modifiers": [], | |
"name": "getLatestPrice", | |
"nameLocation": "520:14:1", | |
"nodeType": "FunctionDefinition", | |
"parameters": { | |
"id": 64, | |
"nodeType": "ParameterList", | |
"parameters": [], | |
"src": "534:2:1" | |
}, | |
"returnParameters": { | |
"id": 67, | |
"nodeType": "ParameterList", | |
"parameters": [ | |
{ | |
"constant": false, | |
"id": 66, | |
"mutability": "mutable", | |
"name": "", | |
"nameLocation": "-1:-1:-1", | |
"nodeType": "VariableDeclaration", | |
"scope": 77, | |
"src": "558:3:1", | |
"stateVariable": false, | |
"storageLocation": "default", | |
"typeDescriptions": { | |
"typeIdentifier": "t_int256", | |
"typeString": "int256" | |
}, | |
"typeName": { | |
"id": 65, | |
"name": "int", | |
"nodeType": "ElementaryTypeName", | |
"src": "558:3:1", | |
"typeDescriptions": { | |
"typeIdentifier": "t_int256", | |
"typeString": "int256" | |
} | |
}, | |
"visibility": "internal" | |
} | |
], | |
"src": "557:5:1" | |
}, | |
"scope": 78, | |
"src": "511:291:1", | |
"stateMutability": "view", | |
"virtual": false, | |
"visibility": "public" | |
} | |
], | |
"scope": 79, | |
"src": "107:698:1", | |
"usedErrors": [] | |
} | |
], | |
"src": "0:805:1" | |
}, | |
"id": 1 | |
} | |
} | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"deploy": { | |
"VM:-": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"main:1": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"ropsten:3": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"rinkeby:4": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"kovan:42": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"goerli:5": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"Custom": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
} | |
}, | |
"data": { | |
"bytecode": { | |
"functionDebugData": { | |
"@_62": { | |
"entryPoint": null, | |
"id": 62, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
} | |
}, | |
"generatedSources": [], | |
"linkReferences": {}, | |
"object": "608060405234801561001057600080fd5b5073d4a33860578de61dbabdc8bfdb98fd742fa7028e6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061028a806100746000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80638e15f47314610030575b600080fd5b61003861004e565b60405161004591906101c5565b60405180910390f35b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a06040518083038186803b1580156100b757600080fd5b505afa1580156100cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ef919061013b565b5050509150508091505090565b60008151905061010b8161020f565b92915050565b60008151905061012081610226565b92915050565b6000815190506101358161023d565b92915050565b600080600080600060a086880312156101575761015661020a565b5b600061016588828901610126565b9550506020610176888289016100fc565b945050604061018788828901610111565b935050606061019888828901610111565b92505060806101a988828901610126565b9150509295509295909350565b6101bf816101e0565b82525050565b60006020820190506101da60008301846101b6565b92915050565b6000819050919050565b6000819050919050565b600069ffffffffffffffffffff82169050919050565b600080fd5b610218816101e0565b811461022357600080fd5b50565b61022f816101ea565b811461023a57600080fd5b50565b610246816101f4565b811461025157600080fd5b5056fea2646970667358221220d24743cf2e50e69d064fe1364008e0e82cf0ba9ec4c2c5b6aeae839daf9e1bcb64736f6c63430008070033", | |
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH20 0xD4A33860578DE61DBABDC8BFDB98FD742FA7028E PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x28A DUP1 PUSH2 0x74 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 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8E15F473 EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x38 PUSH2 0x4E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x1C5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xFEAF968C PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xCB 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 0xEF SWAP2 SWAP1 PUSH2 0x13B JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x10B DUP2 PUSH2 0x20F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x120 DUP2 PUSH2 0x226 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x135 DUP2 PUSH2 0x23D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x157 JUMPI PUSH2 0x156 PUSH2 0x20A JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x165 DUP9 DUP3 DUP10 ADD PUSH2 0x126 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x176 DUP9 DUP3 DUP10 ADD PUSH2 0xFC JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x187 DUP9 DUP3 DUP10 ADD PUSH2 0x111 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x198 DUP9 DUP3 DUP10 ADD PUSH2 0x111 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x1A9 DUP9 DUP3 DUP10 ADD PUSH2 0x126 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH2 0x1BF DUP2 PUSH2 0x1E0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1DA PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1B6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x218 DUP2 PUSH2 0x1E0 JUMP JUMPDEST DUP2 EQ PUSH2 0x223 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x22F DUP2 PUSH2 0x1EA JUMP JUMPDEST DUP2 EQ PUSH2 0x23A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x246 DUP2 PUSH2 0x1F4 JUMP JUMPDEST DUP2 EQ PUSH2 0x251 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD2 SELFBALANCE NUMBER 0xCF 0x2E POP 0xE6 SWAP14 MOD 0x4F 0xE1 CALLDATASIZE BLOCKHASH ADDMOD 0xE0 0xE8 0x2C CREATE 0xBA SWAP15 0xC4 0xC2 0xC5 0xB6 0xAE 0xAE DUP4 SWAP14 0xAF SWAP15 SHL 0xCB PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ", | |
"sourceMap": "107:698:1:-:0;;;318:134;;;;;;;;;;391:42;343:9;;:101;;;;;;;;;;;;;;;;;;107:698;;;;;;" | |
}, | |
"deployedBytecode": { | |
"functionDebugData": { | |
"@getLatestPrice_77": { | |
"entryPoint": 78, | |
"id": 77, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_int256_fromMemory": { | |
"entryPoint": 252, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_uint256_fromMemory": { | |
"entryPoint": 273, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_uint80_fromMemory": { | |
"entryPoint": 294, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory": { | |
"entryPoint": 315, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 5 | |
}, | |
"abi_encode_t_int256_to_t_int256_fromStack": { | |
"entryPoint": 438, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed": { | |
"entryPoint": 453, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"allocate_unbounded": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_int256": { | |
"entryPoint": 480, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint256": { | |
"entryPoint": 490, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint80": { | |
"entryPoint": 500, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { | |
"entryPoint": 522, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_int256": { | |
"entryPoint": 527, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_uint256": { | |
"entryPoint": 550, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_uint80": { | |
"entryPoint": 573, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
} | |
}, | |
"generatedSources": [ | |
{ | |
"ast": { | |
"nodeType": "YulBlock", | |
"src": "0:2752:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "69:79:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "79:22:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "94:6:2" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "88:5:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "88:13:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "79:5:2" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "136:5:2" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_int256", | |
"nodeType": "YulIdentifier", | |
"src": "110:25:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "110:32:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "110:32:2" | |
} | |
] | |
}, | |
"name": "abi_decode_t_int256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "47:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "55:3:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "63:5:2", | |
"type": "" | |
} | |
], | |
"src": "7:141:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "217:80:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "227:22:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "242:6:2" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "236:5:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "236:13:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "227:5:2" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "285:5:2" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "258:26:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "258:33:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "258:33:2" | |
} | |
] | |
}, | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "195:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "203:3:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "211:5:2", | |
"type": "" | |
} | |
], | |
"src": "154:143:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "365:79:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "375:22:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "390:6:2" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "384:5:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "384:13:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "375:5:2" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "432:5:2" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_uint80", | |
"nodeType": "YulIdentifier", | |
"src": "406:25:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "406:32:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "406:32:2" | |
} | |
] | |
}, | |
"name": "abi_decode_t_uint80_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "343:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "351:3:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "359:5:2", | |
"type": "" | |
} | |
], | |
"src": "303:141:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "592:829:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "639:83:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "641:77:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "641:79:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "641:79:2" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "613:7:2" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "622:9:2" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "609:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "609:23:2" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "634:3:2", | |
"type": "", | |
"value": "160" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "605:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "605:33:2" | |
}, | |
"nodeType": "YulIf", | |
"src": "602:120:2" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "732:127:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "747:15:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "761:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "751:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "776:73:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "821:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "832:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "817:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "817:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "841:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint80_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "786:30:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "786:63:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "776:6:2" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "869:128:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "884:16:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "898:2:2", | |
"type": "", | |
"value": "32" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "888:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "914:73:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "959:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "970:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "955:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "955:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "979:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_int256_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "924:30:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "924:63:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "914:6:2" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1007:129:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1022:16:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1036:2:2", | |
"type": "", | |
"value": "64" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1026:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1052:74:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1098:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1109:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1094:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1094:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1118:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1062:31:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1062:64:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value2", | |
"nodeType": "YulIdentifier", | |
"src": "1052:6:2" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1146:129:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1161:16:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1175:2:2", | |
"type": "", | |
"value": "96" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1165:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1191:74:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1237:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1248:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1233:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1233:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1257:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1201:31:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1201:64:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value3", | |
"nodeType": "YulIdentifier", | |
"src": "1191:6:2" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1285:129:2", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1300:17:2", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1314:3:2", | |
"type": "", | |
"value": "128" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1304:6:2", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1331:73:2", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1376:9:2" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1387:6:2" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1372:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1372:22:2" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1396:7:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint80_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1341:30:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1341:63:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value4", | |
"nodeType": "YulIdentifier", | |
"src": "1331:6:2" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "530:9:2", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "541:7:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "553:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "561:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "value2", | |
"nodeType": "YulTypedName", | |
"src": "569:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "value3", | |
"nodeType": "YulTypedName", | |
"src": "577:6:2", | |
"type": "" | |
}, | |
{ | |
"name": "value4", | |
"nodeType": "YulTypedName", | |
"src": "585:6:2", | |
"type": "" | |
} | |
], | |
"src": "450:971:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1490:52:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "1507:3:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1529:5:2" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_int256", | |
"nodeType": "YulIdentifier", | |
"src": "1512:16:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1512:23:2" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "1500:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1500:36:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1500:36:2" | |
} | |
] | |
}, | |
"name": "abi_encode_t_int256_to_t_int256_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1478:5:2", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "1485:3:2", | |
"type": "" | |
} | |
], | |
"src": "1427:115:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1644:122:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1654:26:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1666:9:2" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1677:2:2", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1662:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1662:18:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "1654:4:2" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "1732:6:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1745:9:2" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1756:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1741:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1741:17:2" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_int256_to_t_int256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "1690:41:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1690:69:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1690:69:2" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "1616:9:2", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1628:6:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "1639:4:2", | |
"type": "" | |
} | |
], | |
"src": "1548:218:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1812:35:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1822:19:2", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1838:2:2", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "1832:5:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1832:9:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "1822:6:2" | |
} | |
] | |
} | |
] | |
}, | |
"name": "allocate_unbounded", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "1805:6:2", | |
"type": "" | |
} | |
], | |
"src": "1772:75:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1897:32:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1907:16:2", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "1918:5:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1907:7:2" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_int256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1879:5:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1889:7:2", | |
"type": "" | |
} | |
], | |
"src": "1853:76:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1980:32:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1990:16:2", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2001:5:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "1990:7:2" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "1962:5:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "1972:7:2", | |
"type": "" | |
} | |
], | |
"src": "1935:77:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2062:61:2", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2072:45:2", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2087:5:2" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2094:22:2", | |
"type": "", | |
"value": "0xffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "2083:3:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2083:34:2" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "2072:7:2" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint80", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2044:5:2", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "2054:7:2", | |
"type": "" | |
} | |
], | |
"src": "2018:105:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2218:28:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2235:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2238:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2228:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2228:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2228:12:2" | |
} | |
] | |
}, | |
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", | |
"nodeType": "YulFunctionDefinition", | |
"src": "2129:117:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2341:28:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2358:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2361:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2351:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2351:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2351:12:2" | |
} | |
] | |
}, | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulFunctionDefinition", | |
"src": "2252:117:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2417:78:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2473:16:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2482:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2485:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2475:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2475:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2475:12:2" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2440:5:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2464:5:2" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_int256", | |
"nodeType": "YulIdentifier", | |
"src": "2447:16:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2447:23:2" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "2437:2:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2437:34:2" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "2430:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2430:42:2" | |
}, | |
"nodeType": "YulIf", | |
"src": "2427:62:2" | |
} | |
] | |
}, | |
"name": "validator_revert_t_int256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2410:5:2", | |
"type": "" | |
} | |
], | |
"src": "2375:120:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2544:79:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2601:16:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2610:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2613:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2603:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2603:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2603:12:2" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2567:5:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2592:5:2" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2574:17:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2574:24:2" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "2564:2:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2564:35:2" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "2557:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2557:43:2" | |
}, | |
"nodeType": "YulIf", | |
"src": "2554:63:2" | |
} | |
] | |
}, | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2537:5:2", | |
"type": "" | |
} | |
], | |
"src": "2501:122:2" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2671:78:2", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2727:16:2", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2736:1:2", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2739:1:2", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "2729:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2729:12:2" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2729:12:2" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2694:5:2" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2718:5:2" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint80", | |
"nodeType": "YulIdentifier", | |
"src": "2701:16:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2701:23:2" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "2691:2:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2691:34:2" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "2684:6:2" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2684:42:2" | |
}, | |
"nodeType": "YulIf", | |
"src": "2681:62:2" | |
} | |
] | |
}, | |
"name": "validator_revert_t_uint80", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2664:5:2", | |
"type": "" | |
} | |
], | |
"src": "2629:120:2" | |
} | |
] | |
}, | |
"contents": "{\n\n function abi_decode_t_int256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_int256(value)\n }\n\n function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_t_uint80_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint80(value)\n }\n\n function abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint80_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_int256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value4 := abi_decode_t_uint80_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_int256_to_t_int256_fromStack(value, pos) {\n mstore(pos, cleanup_t_int256(value))\n }\n\n function abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_int256_to_t_int256_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function cleanup_t_int256(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint80(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffff)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function validator_revert_t_int256(value) {\n if iszero(eq(value, cleanup_t_int256(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint80(value) {\n if iszero(eq(value, cleanup_t_uint80(value))) { revert(0, 0) }\n }\n\n}\n", | |
"id": 2, | |
"language": "Yul", | |
"name": "#utility.yul" | |
} | |
], | |
"immutableReferences": {}, | |
"linkReferences": {}, | |
"object": "608060405234801561001057600080fd5b506004361061002b5760003560e01c80638e15f47314610030575b600080fd5b61003861004e565b60405161004591906101c5565b60405180910390f35b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a06040518083038186803b1580156100b757600080fd5b505afa1580156100cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100ef919061013b565b5050509150508091505090565b60008151905061010b8161020f565b92915050565b60008151905061012081610226565b92915050565b6000815190506101358161023d565b92915050565b600080600080600060a086880312156101575761015661020a565b5b600061016588828901610126565b9550506020610176888289016100fc565b945050604061018788828901610111565b935050606061019888828901610111565b92505060806101a988828901610126565b9150509295509295909350565b6101bf816101e0565b82525050565b60006020820190506101da60008301846101b6565b92915050565b6000819050919050565b6000819050919050565b600069ffffffffffffffffffff82169050919050565b600080fd5b610218816101e0565b811461022357600080fd5b50565b61022f816101ea565b811461023a57600080fd5b50565b610246816101f4565b811461025157600080fd5b5056fea2646970667358221220d24743cf2e50e69d064fe1364008e0e82cf0ba9ec4c2c5b6aeae839daf9e1bcb64736f6c63430008070033", | |
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8E15F473 EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x38 PUSH2 0x4E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x1C5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xFEAF968C PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0xA0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xB7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xCB 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 0xEF SWAP2 SWAP1 PUSH2 0x13B JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x10B DUP2 PUSH2 0x20F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x120 DUP2 PUSH2 0x226 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x135 DUP2 PUSH2 0x23D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x157 JUMPI PUSH2 0x156 PUSH2 0x20A JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x165 DUP9 DUP3 DUP10 ADD PUSH2 0x126 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x176 DUP9 DUP3 DUP10 ADD PUSH2 0xFC JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x187 DUP9 DUP3 DUP10 ADD PUSH2 0x111 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x198 DUP9 DUP3 DUP10 ADD PUSH2 0x111 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x1A9 DUP9 DUP3 DUP10 ADD PUSH2 0x126 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH2 0x1BF DUP2 PUSH2 0x1E0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1DA PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1B6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x218 DUP2 PUSH2 0x1E0 JUMP JUMPDEST DUP2 EQ PUSH2 0x223 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x22F DUP2 PUSH2 0x1EA JUMP JUMPDEST DUP2 EQ PUSH2 0x23A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x246 DUP2 PUSH2 0x1F4 JUMP JUMPDEST DUP2 EQ PUSH2 0x251 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD2 SELFBALANCE NUMBER 0xCF 0x2E POP 0xE6 SWAP14 MOD 0x4F 0xE1 CALLDATASIZE BLOCKHASH ADDMOD 0xE0 0xE8 0x2C CREATE 0xBA SWAP15 0xC4 0xC2 0xC5 0xB6 0xAE 0xAE DUP4 SWAP14 0xAF SWAP15 SHL 0xCB PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ", | |
"sourceMap": "107:698:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;511:291;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;558:3;623:9;744;;;;;;;;;;:25;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;574:197;;;;;;789:5;782:12;;;511:291;:::o;7:141:2:-;63:5;94:6;88:13;79:22;;110:32;136:5;110:32;:::i;:::-;7:141;;;;:::o;154:143::-;211:5;242:6;236:13;227:22;;258:33;285:5;258:33;:::i;:::-;154:143;;;;:::o;303:141::-;359:5;390:6;384:13;375:22;;406:32;432:5;406:32;:::i;:::-;303:141;;;;:::o;450:971::-;553:6;561;569;577;585;634:3;622:9;613:7;609:23;605:33;602:120;;;641:79;;:::i;:::-;602:120;761:1;786:63;841:7;832:6;821:9;817:22;786:63;:::i;:::-;776:73;;732:127;898:2;924:63;979:7;970:6;959:9;955:22;924:63;:::i;:::-;914:73;;869:128;1036:2;1062:64;1118:7;1109:6;1098:9;1094:22;1062:64;:::i;:::-;1052:74;;1007:129;1175:2;1201:64;1257:7;1248:6;1237:9;1233:22;1201:64;:::i;:::-;1191:74;;1146:129;1314:3;1341:63;1396:7;1387:6;1376:9;1372:22;1341:63;:::i;:::-;1331:73;;1285:129;450:971;;;;;;;;:::o;1427:115::-;1512:23;1529:5;1512:23;:::i;:::-;1507:3;1500:36;1427:115;;:::o;1548:218::-;1639:4;1677:2;1666:9;1662:18;1654:26;;1690:69;1756:1;1745:9;1741:17;1732:6;1690:69;:::i;:::-;1548:218;;;;:::o;1853:76::-;1889:7;1918:5;1907:16;;1853:76;;;:::o;1935:77::-;1972:7;2001:5;1990:16;;1935:77;;;:::o;2018:105::-;2054:7;2094:22;2087:5;2083:34;2072:45;;2018:105;;;:::o;2252:117::-;2361:1;2358;2351:12;2375:120;2447:23;2464:5;2447:23;:::i;:::-;2440:5;2437:34;2427:62;;2485:1;2482;2475:12;2427:62;2375:120;:::o;2501:122::-;2574:24;2592:5;2574:24;:::i;:::-;2567:5;2564:35;2554:63;;2613:1;2610;2603:12;2554:63;2501:122;:::o;2629:120::-;2701:23;2718:5;2701:23;:::i;:::-;2694:5;2691:34;2681:62;;2739:1;2736;2729:12;2681:62;2629:120;:::o" | |
}, | |
"gasEstimates": { | |
"creation": { | |
"codeDepositCost": "130000", | |
"executionCost": "24444", | |
"totalCost": "154444" | |
}, | |
"external": { | |
"getLatestPrice()": "infinite" | |
} | |
}, | |
"methodIdentifiers": { | |
"getLatestPrice()": "8e15f473" | |
} | |
}, | |
"abi": [ | |
{ | |
"inputs": [], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [], | |
"name": "getLatestPrice", | |
"outputs": [ | |
{ | |
"internalType": "int256", | |
"name": "", | |
"type": "int256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
} | |
] | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"compiler": { | |
"version": "0.8.7+commit.e28d00a7" | |
}, | |
"language": "Solidity", | |
"output": { | |
"abi": [ | |
{ | |
"inputs": [], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [], | |
"name": "getLatestPrice", | |
"outputs": [ | |
{ | |
"internalType": "int256", | |
"name": "", | |
"type": "int256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
} | |
], | |
"devdoc": { | |
"kind": "dev", | |
"methods": {}, | |
"version": 1 | |
}, | |
"userdoc": { | |
"kind": "user", | |
"methods": { | |
"constructor": { | |
"notice": "Network: Goerli Aggregator: ETH/USD Address: 0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e" | |
}, | |
"getLatestPrice()": { | |
"notice": "Returns the latest price" | |
} | |
}, | |
"version": 1 | |
} | |
}, | |
"settings": { | |
"compilationTarget": { | |
"contracts/PriceConsumerV3_TR.sol": "PriceConsumerV3" | |
}, | |
"evmVersion": "london", | |
"libraries": {}, | |
"metadata": { | |
"bytecodeHash": "ipfs" | |
}, | |
"optimizer": { | |
"enabled": false, | |
"runs": 200 | |
}, | |
"remappings": [] | |
}, | |
"sources": { | |
"@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol": { | |
"keccak256": "0x6e6e4b0835904509406b070ee173b5bc8f677c19421b76be38aea3b1b3d30846", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://b3beaa37ee61e4ab615e250fbf01601ae481de843fd0ef55e6b44fd9d5fff8a7", | |
"dweb:/ipfs/QmeZUVwd26LzK4Mfp8Zba5JbQNkZFfTzFu1A6FVMMZDg9c" | |
] | |
}, | |
"contracts/PriceConsumerV3_TR.sol": { | |
"keccak256": "0x97229bbf411cf7875923a35daa756c38bb246b9ddfd0d11e4898408d5d8caca4", | |
"urls": [ | |
"bzz-raw://632fda501c562beb824be5f355d3915d06a444636bd3f6c781db29c95cfb743d", | |
"dweb:/ipfs/Qmc9xRfSYXHEWkZqj813AqxrSfL7yNQyQmbYLkfPcCogXG" | |
] | |
} | |
}, | |
"version": 1 | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pragma solidity ^0.8.7; | |
import "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol"; | |
contract PriceConsumerV3 { | |
AggregatorV3Interface internal priceFeed; | |
/** | |
* Network: Goerli | |
* Aggregator: ETH/USD | |
* Address: 0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e | |
*/ | |
constructor() { | |
priceFeed = AggregatorV3Interface( | |
0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e | |
); | |
} | |
/** | |
* Returns the latest price | |
*/ | |
function getLatestPrice() public view returns (int) { | |
( | |
, | |
/*uint80 roundID*/ int price /*uint startedAt*/ /*uint timeStamp*/ /*uint80 answeredInRound*/, | |
, | |
, | |
) = priceFeed.latestRoundData(); | |
return price; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment