Skip to content

Instantly share code, notes, and snippets.

@Charlie-pang-sys
Created January 8, 2025 14:01
Show Gist options
  • Select an option

  • Save Charlie-pang-sys/5d16699a7b0d18a3e364b97fdcc37a24 to your computer and use it in GitHub Desktop.

Select an option

Save Charlie-pang-sys/5d16699a7b0d18a3e364b97fdcc37a24 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.26+commit.8a97fa7a.js&optimize=false&runs=200&gist=
{
"id": "6445223a0dc256541ad80052aa05d017",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.26",
"solcLongVersion": "0.8.26+commit.8a97fa7a",
"input": {
"language": "Solidity",
"sources": {
"test/FundMe.sol": {
"content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.20;\nimport {AggregatorV3Interface} from \"@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol\";\n\ncontract FundMe{\n mapping(address=>uint256) public fundersToAmount;\n AggregatorV3Interface internal dataFeed;\n uint256 MINIMUM_VALUE = 100 *10 **18;\n constructor(){\n dataFeed = AggregatorV3Interface(0x694AA1769357215DE4FAC081bf1f309aDC325306);\n }\n\n function fund() external payable {\n require(convertEthToUsd(msg.value) >= MINIMUM_VALUE,\"Send more ETH\");\n }\n /**\n * Returns the latest answer.\n */\n function getChainlinkDataFeedLatestAnswer() public view returns (int) {\n // prettier-ignore\n (\n /* uint80 roundID */,\n int answer,\n /*uint startedAt*/,\n /*uint timeStamp*/,\n /*uint80 answeredInRound*/\n ) = dataFeed.latestRoundData();\n return answer;\n }\n\n function convertEthToUsd(uint256 ethAmount) public view returns(uint256){\n uint256 price = uint256(getChainlinkDataFeedLatestAnswer());\n return ethAmount * price /(10 **8);\n }\n}"
},
"@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol": {
"content": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\n// solhint-disable-next-line interface-starts-with-i\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(\n uint80 _roundId\n ) external view returns (uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound);\n\n function latestRoundData()\n external\n view\n returns (uint80 roundId, int256 answer, uint256 startedAt, uint256 updatedAt, uint80 answeredInRound);\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"
]
}
},
"remappings": []
}
},
"output": {
"contracts": {
"@chainlink/contracts/src/v0.8/shared/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.26+commit.8a97fa7a\"},\"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/shared/interfaces/AggregatorV3Interface.sol\":\"AggregatorV3Interface\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol\":{\"keccak256\":\"0x257a8d28fa83d3d942547c8e129ef465e4b5f3f31171e7be4739a4c98da6b4f0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6d39e11b1dc7b9b8ccdabbc9be442ab7cda4a81c748f57e316dcb1bcb4a28bf9\",\"dweb:/ipfs/QmaG6vz6W6iEUBsbHSBob5mdcitYxWjoygxREHpsJHfWrS\"]}},\"version\":1}",
"storageLayout": {
"storage": [],
"types": null
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
}
},
"test/FundMe.sol": {
"FundMe": {
"abi": [
{
"inputs": [],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "ethAmount",
"type": "uint256"
}
],
"name": "convertEthToUsd",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "fund",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "fundersToAmount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getChainlinkDataFeedLatestAnswer",
"outputs": [
{
"internalType": "int256",
"name": "",
"type": "int256"
}
],
"stateMutability": "view",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"test/FundMe.sol\":171:1156 contract FundMe{... */\n mstore(0x40, 0x80)\n /* \"test/FundMe.sol\":315:327 100 *10 **18 */\n 0x056bc75e2d63100000\n /* \"test/FundMe.sol\":291:327 uint256 MINIMUM_VALUE = 100 *10 **18 */\n 0x02\n sstore\n /* \"test/FundMe.sol\":333:439 constructor(){... */\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n /* \"test/FundMe.sol\":389:431 0x694AA1769357215DE4FAC081bf1f309aDC325306 */\n 0x694aa1769357215de4fac081bf1f309adc325306\n /* \"test/FundMe.sol\":356:364 dataFeed */\n 0x01\n 0x00\n /* \"test/FundMe.sol\":356:432 dataFeed = AggregatorV3Interface(0x694AA1769357215DE4FAC081bf1f309aDC325306) */\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 /* \"test/FundMe.sol\":171:1156 contract FundMe{... */\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"test/FundMe.sol\":171:1156 contract FundMe{... */\n mstore(0x40, 0x80)\n jumpi(tag_1, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x9f883a05\n eq\n tag_2\n jumpi\n dup1\n 0xb60d4288\n eq\n tag_3\n jumpi\n dup1\n 0xbea4dfb5\n eq\n tag_4\n jumpi\n dup1\n 0xc086381e\n eq\n tag_5\n jumpi\n tag_1:\n 0x00\n dup1\n revert\n /* \"test/FundMe.sol\":192:240 mapping(address=>uint256) public fundersToAmount */\n tag_2:\n callvalue\n dup1\n iszero\n tag_6\n jumpi\n 0x00\n dup1\n revert\n tag_6:\n pop\n tag_7\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_8\n swap2\n swap1\n tag_9\n jump\t// in\n tag_8:\n tag_10\n jump\t// in\n tag_7:\n mload(0x40)\n tag_11\n swap2\n swap1\n tag_12\n jump\t// in\n tag_11:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"test/FundMe.sol\":445:563 function fund() external payable {... */\n tag_3:\n tag_13\n tag_14\n jump\t// in\n tag_13:\n stop\n /* \"test/FundMe.sol\":618:956 function getChainlinkDataFeedLatestAnswer() public view returns (int) {... */\n tag_4:\n callvalue\n dup1\n iszero\n tag_15\n jumpi\n 0x00\n dup1\n revert\n tag_15:\n pop\n tag_16\n tag_17\n jump\t// in\n tag_16:\n mload(0x40)\n tag_18\n swap2\n swap1\n tag_19\n jump\t// in\n tag_18:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"test/FundMe.sol\":962:1154 function convertEthToUsd(uint256 ethAmount) public view returns(uint256){... */\n tag_5:\n callvalue\n dup1\n iszero\n tag_20\n jumpi\n 0x00\n dup1\n revert\n tag_20:\n pop\n tag_21\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_22\n swap2\n swap1\n tag_23\n jump\t// in\n tag_22:\n tag_24\n jump\t// in\n tag_21:\n mload(0x40)\n tag_25\n swap2\n swap1\n tag_12\n jump\t// in\n tag_25:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"test/FundMe.sol\":192:240 mapping(address=>uint256) public fundersToAmount */\n tag_10:\n mstore(0x20, 0x00)\n dup1\n 0x00\n mstore\n keccak256(0x00, 0x40)\n 0x00\n swap2\n pop\n swap1\n pop\n sload\n dup2\n jump\t// out\n /* \"test/FundMe.sol\":445:563 function fund() external payable {... */\n tag_14:\n /* \"test/FundMe.sol\":526:539 MINIMUM_VALUE */\n sload(0x02)\n /* \"test/FundMe.sol\":496:522 convertEthToUsd(msg.value) */\n tag_27\n /* \"test/FundMe.sol\":512:521 msg.value */\n callvalue\n /* \"test/FundMe.sol\":496:511 convertEthToUsd */\n tag_24\n /* \"test/FundMe.sol\":496:522 convertEthToUsd(msg.value) */\n jump\t// in\n tag_27:\n /* \"test/FundMe.sol\":496:539 convertEthToUsd(msg.value) >= MINIMUM_VALUE */\n lt\n iszero\n /* \"test/FundMe.sol\":488:556 require(convertEthToUsd(msg.value) >= MINIMUM_VALUE,\"Send more ETH\") */\n tag_28\n jumpi\n mload(0x40)\n 0x08c379a000000000000000000000000000000000000000000000000000000000\n dup2\n mstore\n 0x04\n add\n tag_29\n swap1\n tag_30\n jump\t// in\n tag_29:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n revert\n tag_28:\n /* \"test/FundMe.sol\":445:563 function fund() external payable {... */\n jump\t// out\n /* \"test/FundMe.sol\":618:956 function getChainlinkDataFeedLatestAnswer() public view returns (int) {... */\n tag_17:\n /* \"test/FundMe.sol\":683:686 int */\n 0x00\n /* \"test/FundMe.sol\":773:783 int answer */\n dup1\n /* \"test/FundMe.sol\":900:908 dataFeed */\n 0x01\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"test/FundMe.sol\":900:924 dataFeed.latestRoundData */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n 0xfeaf968c\n /* \"test/FundMe.sol\":900:926 dataFeed.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 gas\n staticcall\n iszero\n dup1\n iszero\n tag_33\n jumpi\n returndatasize\n 0x00\n dup1\n returndatacopy\n revert(0x00, returndatasize)\n tag_33:\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_34\n swap2\n swap1\n tag_35\n jump\t// in\n tag_34:\n /* \"test/FundMe.sol\":725:926 (... */\n pop\n pop\n pop\n swap2\n pop\n pop\n /* \"test/FundMe.sol\":943:949 answer */\n dup1\n /* \"test/FundMe.sol\":936:949 return answer */\n swap2\n pop\n pop\n /* \"test/FundMe.sol\":618:956 function getChainlinkDataFeedLatestAnswer() public view returns (int) {... */\n swap1\n jump\t// out\n /* \"test/FundMe.sol\":962:1154 function convertEthToUsd(uint256 ethAmount) public view returns(uint256){... */\n tag_24:\n /* \"test/FundMe.sol\":1026:1033 uint256 */\n 0x00\n /* \"test/FundMe.sol\":1044:1057 uint256 price */\n dup1\n /* \"test/FundMe.sol\":1068:1102 getChainlinkDataFeedLatestAnswer() */\n tag_37\n /* \"test/FundMe.sol\":1068:1100 getChainlinkDataFeedLatestAnswer */\n tag_17\n /* \"test/FundMe.sol\":1068:1102 getChainlinkDataFeedLatestAnswer() */\n jump\t// in\n tag_37:\n /* \"test/FundMe.sol\":1044:1103 uint256 price = uint256(getChainlinkDataFeedLatestAnswer()) */\n swap1\n pop\n /* \"test/FundMe.sol\":1140:1146 10 **8 */\n 0x05f5e100\n /* \"test/FundMe.sol\":1132:1137 price */\n dup2\n /* \"test/FundMe.sol\":1120:1129 ethAmount */\n dup5\n /* \"test/FundMe.sol\":1120:1137 ethAmount * price */\n tag_38\n swap2\n swap1\n tag_39\n jump\t// in\n tag_38:\n /* \"test/FundMe.sol\":1120:1147 ethAmount * price /(10 **8) */\n tag_40\n swap2\n swap1\n tag_41\n jump\t// in\n tag_40:\n /* \"test/FundMe.sol\":1113:1147 return ethAmount * price /(10 **8) */\n swap2\n pop\n pop\n /* \"test/FundMe.sol\":962:1154 function convertEthToUsd(uint256 ethAmount) public view returns(uint256){... */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":88:205 */\n tag_43:\n /* \"#utility.yul\":197:198 */\n 0x00\n /* \"#utility.yul\":194:195 */\n dup1\n /* \"#utility.yul\":187:199 */\n revert\n /* \"#utility.yul\":334:460 */\n tag_45:\n /* \"#utility.yul\":371:378 */\n 0x00\n /* \"#utility.yul\":411:453 */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":404:409 */\n dup3\n /* \"#utility.yul\":400:454 */\n and\n /* \"#utility.yul\":389:454 */\n swap1\n pop\n /* \"#utility.yul\":334:460 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":466:562 */\n tag_46:\n /* \"#utility.yul\":503:510 */\n 0x00\n /* \"#utility.yul\":532:556 */\n tag_72\n /* \"#utility.yul\":550:555 */\n dup3\n /* \"#utility.yul\":532:556 */\n tag_45\n jump\t// in\n tag_72:\n /* \"#utility.yul\":521:556 */\n swap1\n pop\n /* \"#utility.yul\":466:562 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":568:690 */\n tag_47:\n /* \"#utility.yul\":641:665 */\n tag_74\n /* \"#utility.yul\":659:664 */\n dup2\n /* \"#utility.yul\":641:665 */\n tag_46\n jump\t// in\n tag_74:\n /* \"#utility.yul\":634:639 */\n dup2\n /* \"#utility.yul\":631:666 */\n eq\n /* \"#utility.yul\":621:684 */\n tag_75\n jumpi\n /* \"#utility.yul\":680:681 */\n 0x00\n /* \"#utility.yul\":677:678 */\n dup1\n /* \"#utility.yul\":670:682 */\n revert\n /* \"#utility.yul\":621:684 */\n tag_75:\n /* \"#utility.yul\":568:690 */\n pop\n jump\t// out\n /* \"#utility.yul\":696:835 */\n tag_48:\n /* \"#utility.yul\":742:747 */\n 0x00\n /* \"#utility.yul\":780:786 */\n dup2\n /* \"#utility.yul\":767:787 */\n calldataload\n /* \"#utility.yul\":758:787 */\n swap1\n pop\n /* \"#utility.yul\":796:829 */\n tag_77\n /* \"#utility.yul\":823:828 */\n dup2\n /* \"#utility.yul\":796:829 */\n tag_47\n jump\t// in\n tag_77:\n /* \"#utility.yul\":696:835 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":841:1170 */\n tag_9:\n /* \"#utility.yul\":900:906 */\n 0x00\n /* \"#utility.yul\":949:951 */\n 0x20\n /* \"#utility.yul\":937:946 */\n dup3\n /* \"#utility.yul\":928:935 */\n dup5\n /* \"#utility.yul\":924:947 */\n sub\n /* \"#utility.yul\":920:952 */\n slt\n /* \"#utility.yul\":917:1036 */\n iszero\n tag_79\n jumpi\n /* \"#utility.yul\":955:1034 */\n tag_80\n tag_43\n jump\t// in\n tag_80:\n /* \"#utility.yul\":917:1036 */\n tag_79:\n /* \"#utility.yul\":1075:1076 */\n 0x00\n /* \"#utility.yul\":1100:1153 */\n tag_81\n /* \"#utility.yul\":1145:1152 */\n dup5\n /* \"#utility.yul\":1136:1142 */\n dup3\n /* \"#utility.yul\":1125:1134 */\n dup6\n /* \"#utility.yul\":1121:1143 */\n add\n /* \"#utility.yul\":1100:1153 */\n tag_48\n jump\t// in\n tag_81:\n /* \"#utility.yul\":1090:1153 */\n swap2\n pop\n /* \"#utility.yul\":1046:1163 */\n pop\n /* \"#utility.yul\":841:1170 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1176:1253 */\n tag_49:\n /* \"#utility.yul\":1213:1220 */\n 0x00\n /* \"#utility.yul\":1242:1247 */\n dup2\n /* \"#utility.yul\":1231:1247 */\n swap1\n pop\n /* \"#utility.yul\":1176:1253 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1259:1377 */\n tag_50:\n /* \"#utility.yul\":1346:1370 */\n tag_84\n /* \"#utility.yul\":1364:1369 */\n dup2\n /* \"#utility.yul\":1346:1370 */\n tag_49\n jump\t// in\n tag_84:\n /* \"#utility.yul\":1341:1344 */\n dup3\n /* \"#utility.yul\":1334:1371 */\n mstore\n /* \"#utility.yul\":1259:1377 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1383:1605 */\n tag_12:\n /* \"#utility.yul\":1476:1480 */\n 0x00\n /* \"#utility.yul\":1514:1516 */\n 0x20\n /* \"#utility.yul\":1503:1512 */\n dup3\n /* \"#utility.yul\":1499:1517 */\n add\n /* \"#utility.yul\":1491:1517 */\n swap1\n pop\n /* \"#utility.yul\":1527:1598 */\n tag_86\n /* \"#utility.yul\":1595:1596 */\n 0x00\n /* \"#utility.yul\":1584:1593 */\n dup4\n /* \"#utility.yul\":1580:1597 */\n add\n /* \"#utility.yul\":1571:1577 */\n dup5\n /* \"#utility.yul\":1527:1598 */\n tag_50\n jump\t// in\n tag_86:\n /* \"#utility.yul\":1383:1605 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1611:1687 */\n tag_51:\n /* \"#utility.yul\":1647:1654 */\n 0x00\n /* \"#utility.yul\":1676:1681 */\n dup2\n /* \"#utility.yul\":1665:1681 */\n swap1\n pop\n /* \"#utility.yul\":1611:1687 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1693:1808 */\n tag_52:\n /* \"#utility.yul\":1778:1801 */\n tag_89\n /* \"#utility.yul\":1795:1800 */\n dup2\n /* \"#utility.yul\":1778:1801 */\n tag_51\n jump\t// in\n tag_89:\n /* \"#utility.yul\":1773:1776 */\n dup3\n /* \"#utility.yul\":1766:1802 */\n mstore\n /* \"#utility.yul\":1693:1808 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1814:2032 */\n tag_19:\n /* \"#utility.yul\":1905:1909 */\n 0x00\n /* \"#utility.yul\":1943:1945 */\n 0x20\n /* \"#utility.yul\":1932:1941 */\n dup3\n /* \"#utility.yul\":1928:1946 */\n add\n /* \"#utility.yul\":1920:1946 */\n swap1\n pop\n /* \"#utility.yul\":1956:2025 */\n tag_91\n /* \"#utility.yul\":2022:2023 */\n 0x00\n /* \"#utility.yul\":2011:2020 */\n dup4\n /* \"#utility.yul\":2007:2024 */\n add\n /* \"#utility.yul\":1998:2004 */\n dup5\n /* \"#utility.yul\":1956:2025 */\n tag_52\n jump\t// in\n tag_91:\n /* \"#utility.yul\":1814:2032 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2038:2160 */\n tag_53:\n /* \"#utility.yul\":2111:2135 */\n tag_93\n /* \"#utility.yul\":2129:2134 */\n dup2\n /* \"#utility.yul\":2111:2135 */\n tag_49\n jump\t// in\n tag_93:\n /* \"#utility.yul\":2104:2109 */\n dup2\n /* \"#utility.yul\":2101:2136 */\n eq\n /* \"#utility.yul\":2091:2154 */\n tag_94\n jumpi\n /* \"#utility.yul\":2150:2151 */\n 0x00\n /* \"#utility.yul\":2147:2148 */\n dup1\n /* \"#utility.yul\":2140:2152 */\n revert\n /* \"#utility.yul\":2091:2154 */\n tag_94:\n /* \"#utility.yul\":2038:2160 */\n pop\n jump\t// out\n /* \"#utility.yul\":2166:2305 */\n tag_54:\n /* \"#utility.yul\":2212:2217 */\n 0x00\n /* \"#utility.yul\":2250:2256 */\n dup2\n /* \"#utility.yul\":2237:2257 */\n calldataload\n /* \"#utility.yul\":2228:2257 */\n swap1\n pop\n /* \"#utility.yul\":2266:2299 */\n tag_96\n /* \"#utility.yul\":2293:2298 */\n dup2\n /* \"#utility.yul\":2266:2299 */\n tag_53\n jump\t// in\n tag_96:\n /* \"#utility.yul\":2166:2305 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2311:2640 */\n tag_23:\n /* \"#utility.yul\":2370:2376 */\n 0x00\n /* \"#utility.yul\":2419:2421 */\n 0x20\n /* \"#utility.yul\":2407:2416 */\n dup3\n /* \"#utility.yul\":2398:2405 */\n dup5\n /* \"#utility.yul\":2394:2417 */\n sub\n /* \"#utility.yul\":2390:2422 */\n slt\n /* \"#utility.yul\":2387:2506 */\n iszero\n tag_98\n jumpi\n /* \"#utility.yul\":2425:2504 */\n tag_99\n tag_43\n jump\t// in\n tag_99:\n /* \"#utility.yul\":2387:2506 */\n tag_98:\n /* \"#utility.yul\":2545:2546 */\n 0x00\n /* \"#utility.yul\":2570:2623 */\n tag_100\n /* \"#utility.yul\":2615:2622 */\n dup5\n /* \"#utility.yul\":2606:2612 */\n dup3\n /* \"#utility.yul\":2595:2604 */\n dup6\n /* \"#utility.yul\":2591:2613 */\n add\n /* \"#utility.yul\":2570:2623 */\n tag_54\n jump\t// in\n tag_100:\n /* \"#utility.yul\":2560:2623 */\n swap2\n pop\n /* \"#utility.yul\":2516:2633 */\n pop\n /* \"#utility.yul\":2311:2640 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2646:2815 */\n tag_55:\n /* \"#utility.yul\":2730:2741 */\n 0x00\n /* \"#utility.yul\":2764:2770 */\n dup3\n /* \"#utility.yul\":2759:2762 */\n dup3\n /* \"#utility.yul\":2752:2771 */\n mstore\n /* \"#utility.yul\":2804:2808 */\n 0x20\n /* \"#utility.yul\":2799:2802 */\n dup3\n /* \"#utility.yul\":2795:2809 */\n add\n /* \"#utility.yul\":2780:2809 */\n swap1\n pop\n /* \"#utility.yul\":2646:2815 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2821:2984 */\n tag_56:\n /* \"#utility.yul\":2961:2976 */\n 0x53656e64206d6f72652045544800000000000000000000000000000000000000\n /* \"#utility.yul\":2957:2958 */\n 0x00\n /* \"#utility.yul\":2949:2955 */\n dup3\n /* \"#utility.yul\":2945:2959 */\n add\n /* \"#utility.yul\":2938:2977 */\n mstore\n /* \"#utility.yul\":2821:2984 */\n pop\n jump\t// out\n /* \"#utility.yul\":2990:3356 */\n tag_57:\n /* \"#utility.yul\":3132:3135 */\n 0x00\n /* \"#utility.yul\":3153:3220 */\n tag_104\n /* \"#utility.yul\":3217:3219 */\n 0x0d\n /* \"#utility.yul\":3212:3215 */\n dup4\n /* \"#utility.yul\":3153:3220 */\n tag_55\n jump\t// in\n tag_104:\n /* \"#utility.yul\":3146:3220 */\n swap2\n pop\n /* \"#utility.yul\":3229:3322 */\n tag_105\n /* \"#utility.yul\":3318:3321 */\n dup3\n /* \"#utility.yul\":3229:3322 */\n tag_56\n jump\t// in\n tag_105:\n /* \"#utility.yul\":3347:3349 */\n 0x20\n /* \"#utility.yul\":3342:3345 */\n dup3\n /* \"#utility.yul\":3338:3350 */\n add\n /* \"#utility.yul\":3331:3350 */\n swap1\n pop\n /* \"#utility.yul\":2990:3356 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3362:3781 */\n tag_30:\n /* \"#utility.yul\":3528:3532 */\n 0x00\n /* \"#utility.yul\":3566:3568 */\n 0x20\n /* \"#utility.yul\":3555:3564 */\n dup3\n /* \"#utility.yul\":3551:3569 */\n add\n /* \"#utility.yul\":3543:3569 */\n swap1\n pop\n /* \"#utility.yul\":3615:3624 */\n dup2\n /* \"#utility.yul\":3609:3613 */\n dup2\n /* \"#utility.yul\":3605:3625 */\n sub\n /* \"#utility.yul\":3601:3602 */\n 0x00\n /* \"#utility.yul\":3590:3599 */\n dup4\n /* \"#utility.yul\":3586:3603 */\n add\n /* \"#utility.yul\":3579:3626 */\n mstore\n /* \"#utility.yul\":3643:3774 */\n tag_107\n /* \"#utility.yul\":3769:3773 */\n dup2\n /* \"#utility.yul\":3643:3774 */\n tag_57\n jump\t// in\n tag_107:\n /* \"#utility.yul\":3635:3774 */\n swap1\n pop\n /* \"#utility.yul\":3362:3781 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3787:3892 */\n tag_58:\n /* \"#utility.yul\":3823:3830 */\n 0x00\n /* \"#utility.yul\":3863:3885 */\n 0xffffffffffffffffffff\n /* \"#utility.yul\":3856:3861 */\n dup3\n /* \"#utility.yul\":3852:3886 */\n and\n /* \"#utility.yul\":3841:3886 */\n swap1\n pop\n /* \"#utility.yul\":3787:3892 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3898:4018 */\n tag_59:\n /* \"#utility.yul\":3970:3993 */\n tag_110\n /* \"#utility.yul\":3987:3992 */\n dup2\n /* \"#utility.yul\":3970:3993 */\n tag_58\n jump\t// in\n tag_110:\n /* \"#utility.yul\":3963:3968 */\n dup2\n /* \"#utility.yul\":3960:3994 */\n eq\n /* \"#utility.yul\":3950:4012 */\n tag_111\n jumpi\n /* \"#utility.yul\":4008:4009 */\n 0x00\n /* \"#utility.yul\":4005:4006 */\n dup1\n /* \"#utility.yul\":3998:4010 */\n revert\n /* \"#utility.yul\":3950:4012 */\n tag_111:\n /* \"#utility.yul\":3898:4018 */\n pop\n jump\t// out\n /* \"#utility.yul\":4024:4165 */\n tag_60:\n /* \"#utility.yul\":4080:4085 */\n 0x00\n /* \"#utility.yul\":4111:4117 */\n dup2\n /* \"#utility.yul\":4105:4118 */\n mload\n /* \"#utility.yul\":4096:4118 */\n swap1\n pop\n /* \"#utility.yul\":4127:4159 */\n tag_113\n /* \"#utility.yul\":4153:4158 */\n dup2\n /* \"#utility.yul\":4127:4159 */\n tag_59\n jump\t// in\n tag_113:\n /* \"#utility.yul\":4024:4165 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":4171:4291 */\n tag_61:\n /* \"#utility.yul\":4243:4266 */\n tag_115\n /* \"#utility.yul\":4260:4265 */\n dup2\n /* \"#utility.yul\":4243:4266 */\n tag_51\n jump\t// in\n tag_115:\n /* \"#utility.yul\":4236:4241 */\n dup2\n /* \"#utility.yul\":4233:4267 */\n eq\n /* \"#utility.yul\":4223:4285 */\n tag_116\n jumpi\n /* \"#utility.yul\":4281:4282 */\n 0x00\n /* \"#utility.yul\":4278:4279 */\n dup1\n /* \"#utility.yul\":4271:4283 */\n revert\n /* \"#utility.yul\":4223:4285 */\n tag_116:\n /* \"#utility.yul\":4171:4291 */\n pop\n jump\t// out\n /* \"#utility.yul\":4297:4438 */\n tag_62:\n /* \"#utility.yul\":4353:4358 */\n 0x00\n /* \"#utility.yul\":4384:4390 */\n dup2\n /* \"#utility.yul\":4378:4391 */\n mload\n /* \"#utility.yul\":4369:4391 */\n swap1\n pop\n /* \"#utility.yul\":4400:4432 */\n tag_118\n /* \"#utility.yul\":4426:4431 */\n dup2\n /* \"#utility.yul\":4400:4432 */\n tag_61\n jump\t// in\n tag_118:\n /* \"#utility.yul\":4297:4438 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":4444:4587 */\n tag_63:\n /* \"#utility.yul\":4501:4506 */\n 0x00\n /* \"#utility.yul\":4532:4538 */\n dup2\n /* \"#utility.yul\":4526:4539 */\n mload\n /* \"#utility.yul\":4517:4539 */\n swap1\n pop\n /* \"#utility.yul\":4548:4581 */\n tag_120\n /* \"#utility.yul\":4575:4580 */\n dup2\n /* \"#utility.yul\":4548:4581 */\n tag_53\n jump\t// in\n tag_120:\n /* \"#utility.yul\":4444:4587 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":4593:5564 */\n tag_35:\n /* \"#utility.yul\":4696:4702 */\n 0x00\n /* \"#utility.yul\":4704:4710 */\n dup1\n /* \"#utility.yul\":4712:4718 */\n 0x00\n /* \"#utility.yul\":4720:4726 */\n dup1\n /* \"#utility.yul\":4728:4734 */\n 0x00\n /* \"#utility.yul\":4777:4780 */\n 0xa0\n /* \"#utility.yul\":4765:4774 */\n dup7\n /* \"#utility.yul\":4756:4763 */\n dup9\n /* \"#utility.yul\":4752:4775 */\n sub\n /* \"#utility.yul\":4748:4781 */\n slt\n /* \"#utility.yul\":4745:4865 */\n iszero\n tag_122\n jumpi\n /* \"#utility.yul\":4784:4863 */\n tag_123\n tag_43\n jump\t// in\n tag_123:\n /* \"#utility.yul\":4745:4865 */\n tag_122:\n /* \"#utility.yul\":4904:4905 */\n 0x00\n /* \"#utility.yul\":4929:4992 */\n tag_124\n /* \"#utility.yul\":4984:4991 */\n dup9\n /* \"#utility.yul\":4975:4981 */\n dup3\n /* \"#utility.yul\":4964:4973 */\n dup10\n /* \"#utility.yul\":4960:4982 */\n add\n /* \"#utility.yul\":4929:4992 */\n tag_60\n jump\t// in\n tag_124:\n /* \"#utility.yul\":4919:4992 */\n swap6\n pop\n /* \"#utility.yul\":4875:5002 */\n pop\n /* \"#utility.yul\":5041:5043 */\n 0x20\n /* \"#utility.yul\":5067:5130 */\n tag_125\n /* \"#utility.yul\":5122:5129 */\n dup9\n /* \"#utility.yul\":5113:5119 */\n dup3\n /* \"#utility.yul\":5102:5111 */\n dup10\n /* \"#utility.yul\":5098:5120 */\n add\n /* \"#utility.yul\":5067:5130 */\n tag_62\n jump\t// in\n tag_125:\n /* \"#utility.yul\":5057:5130 */\n swap5\n pop\n /* \"#utility.yul\":5012:5140 */\n pop\n /* \"#utility.yul\":5179:5181 */\n 0x40\n /* \"#utility.yul\":5205:5269 */\n tag_126\n /* \"#utility.yul\":5261:5268 */\n dup9\n /* \"#utility.yul\":5252:5258 */\n dup3\n /* \"#utility.yul\":5241:5250 */\n dup10\n /* \"#utility.yul\":5237:5259 */\n add\n /* \"#utility.yul\":5205:5269 */\n tag_63\n jump\t// in\n tag_126:\n /* \"#utility.yul\":5195:5269 */\n swap4\n pop\n /* \"#utility.yul\":5150:5279 */\n pop\n /* \"#utility.yul\":5318:5320 */\n 0x60\n /* \"#utility.yul\":5344:5408 */\n tag_127\n /* \"#utility.yul\":5400:5407 */\n dup9\n /* \"#utility.yul\":5391:5397 */\n dup3\n /* \"#utility.yul\":5380:5389 */\n dup10\n /* \"#utility.yul\":5376:5398 */\n add\n /* \"#utility.yul\":5344:5408 */\n tag_63\n jump\t// in\n tag_127:\n /* \"#utility.yul\":5334:5408 */\n swap3\n pop\n /* \"#utility.yul\":5289:5418 */\n pop\n /* \"#utility.yul\":5457:5460 */\n 0x80\n /* \"#utility.yul\":5484:5547 */\n tag_128\n /* \"#utility.yul\":5539:5546 */\n dup9\n /* \"#utility.yul\":5530:5536 */\n dup3\n /* \"#utility.yul\":5519:5528 */\n dup10\n /* \"#utility.yul\":5515:5537 */\n add\n /* \"#utility.yul\":5484:5547 */\n tag_60\n jump\t// in\n tag_128:\n /* \"#utility.yul\":5474:5547 */\n swap2\n pop\n /* \"#utility.yul\":5428:5557 */\n pop\n /* \"#utility.yul\":4593:5564 */\n swap3\n swap6\n pop\n swap3\n swap6\n swap1\n swap4\n pop\n jump\t// out\n /* \"#utility.yul\":5570:5750 */\n tag_64:\n /* \"#utility.yul\":5618:5695 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":5615:5616 */\n 0x00\n /* \"#utility.yul\":5608:5696 */\n mstore\n /* \"#utility.yul\":5715:5719 */\n 0x11\n /* \"#utility.yul\":5712:5713 */\n 0x04\n /* \"#utility.yul\":5705:5720 */\n mstore\n /* \"#utility.yul\":5739:5743 */\n 0x24\n /* \"#utility.yul\":5736:5737 */\n 0x00\n /* \"#utility.yul\":5729:5744 */\n revert\n /* \"#utility.yul\":5756:6166 */\n tag_39:\n /* \"#utility.yul\":5796:5803 */\n 0x00\n /* \"#utility.yul\":5819:5839 */\n tag_131\n /* \"#utility.yul\":5837:5838 */\n dup3\n /* \"#utility.yul\":5819:5839 */\n tag_49\n jump\t// in\n tag_131:\n /* \"#utility.yul\":5814:5839 */\n swap2\n pop\n /* \"#utility.yul\":5853:5873 */\n tag_132\n /* \"#utility.yul\":5871:5872 */\n dup4\n /* \"#utility.yul\":5853:5873 */\n tag_49\n jump\t// in\n tag_132:\n /* \"#utility.yul\":5848:5873 */\n swap3\n pop\n /* \"#utility.yul\":5908:5909 */\n dup3\n /* \"#utility.yul\":5905:5906 */\n dup3\n /* \"#utility.yul\":5901:5910 */\n mul\n /* \"#utility.yul\":5930:5960 */\n tag_133\n /* \"#utility.yul\":5948:5959 */\n dup2\n /* \"#utility.yul\":5930:5960 */\n tag_49\n jump\t// in\n tag_133:\n /* \"#utility.yul\":5919:5960 */\n swap2\n pop\n /* \"#utility.yul\":6109:6110 */\n dup3\n /* \"#utility.yul\":6100:6107 */\n dup3\n /* \"#utility.yul\":6096:6111 */\n div\n /* \"#utility.yul\":6093:6094 */\n dup5\n /* \"#utility.yul\":6090:6112 */\n eq\n /* \"#utility.yul\":6070:6071 */\n dup4\n /* \"#utility.yul\":6063:6072 */\n iszero\n /* \"#utility.yul\":6043:6126 */\n or\n /* \"#utility.yul\":6020:6159 */\n tag_134\n jumpi\n /* \"#utility.yul\":6139:6157 */\n tag_135\n tag_64\n jump\t// in\n tag_135:\n /* \"#utility.yul\":6020:6159 */\n tag_134:\n /* \"#utility.yul\":5804:6166 */\n pop\n /* \"#utility.yul\":5756:6166 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":6172:6352 */\n tag_65:\n /* \"#utility.yul\":6220:6297 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":6217:6218 */\n 0x00\n /* \"#utility.yul\":6210:6298 */\n mstore\n /* \"#utility.yul\":6317:6321 */\n 0x12\n /* \"#utility.yul\":6314:6315 */\n 0x04\n /* \"#utility.yul\":6307:6322 */\n mstore\n /* \"#utility.yul\":6341:6345 */\n 0x24\n /* \"#utility.yul\":6338:6339 */\n 0x00\n /* \"#utility.yul\":6331:6346 */\n revert\n /* \"#utility.yul\":6358:6543 */\n tag_41:\n /* \"#utility.yul\":6398:6399 */\n 0x00\n /* \"#utility.yul\":6415:6435 */\n tag_138\n /* \"#utility.yul\":6433:6434 */\n dup3\n /* \"#utility.yul\":6415:6435 */\n tag_49\n jump\t// in\n tag_138:\n /* \"#utility.yul\":6410:6435 */\n swap2\n pop\n /* \"#utility.yul\":6449:6469 */\n tag_139\n /* \"#utility.yul\":6467:6468 */\n dup4\n /* \"#utility.yul\":6449:6469 */\n tag_49\n jump\t// in\n tag_139:\n /* \"#utility.yul\":6444:6469 */\n swap3\n pop\n /* \"#utility.yul\":6488:6489 */\n dup3\n /* \"#utility.yul\":6478:6513 */\n tag_140\n jumpi\n /* \"#utility.yul\":6493:6511 */\n tag_141\n tag_65\n jump\t// in\n tag_141:\n /* \"#utility.yul\":6478:6513 */\n tag_140:\n /* \"#utility.yul\":6535:6536 */\n dup3\n /* \"#utility.yul\":6532:6533 */\n dup3\n /* \"#utility.yul\":6528:6537 */\n div\n /* \"#utility.yul\":6523:6537 */\n swap1\n pop\n /* \"#utility.yul\":6358:6543 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n\n auxdata: 0xa26469706673582212204929cb025ea16aba87187dd39a401e222cdcb9a9ccd48b6b3dfaef9a091ec05664736f6c634300081a0033\n}\n",
"bytecode": {
"functionDebugData": {
"@_73": {
"entryPoint": null,
"id": 73,
"parameterSlots": 0,
"returnSlots": 0
}
},
"generatedSources": [],
"linkReferences": {},
"object": "608060405268056bc75e2d63100000600255348015601b575f80fd5b5073694aa1769357215de4fac081bf1f309adc32530660015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506105ca8061007d5f395ff3fe60806040526004361061003e575f3560e01c80639f883a0514610042578063b60d42881461007e578063bea4dfb514610088578063c086381e146100b2575b5f80fd5b34801561004d575f80fd5b506100686004803603810190610063919061027b565b6100ee565b60405161007591906102be565b60405180910390f35b610086610102565b005b348015610093575f80fd5b5061009c610151565b6040516100a991906102ef565b60405180910390f35b3480156100bd575f80fd5b506100d860048036038101906100d39190610332565b6101ee565b6040516100e591906102be565b60405180910390f35b5f602052805f5260405f205f915090505481565b60025461010e346101ee565b101561014f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610146906103b7565b60405180910390fd5b565b5f8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156101bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101e19190610452565b5050509150508091505090565b5f806101f8610151565b90506305f5e100818461020b91906104f6565b6102159190610564565b915050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61024a82610221565b9050919050565b61025a81610240565b8114610264575f80fd5b50565b5f8135905061027581610251565b92915050565b5f602082840312156102905761028f61021d565b5b5f61029d84828501610267565b91505092915050565b5f819050919050565b6102b8816102a6565b82525050565b5f6020820190506102d15f8301846102af565b92915050565b5f819050919050565b6102e9816102d7565b82525050565b5f6020820190506103025f8301846102e0565b92915050565b610311816102a6565b811461031b575f80fd5b50565b5f8135905061032c81610308565b92915050565b5f602082840312156103475761034661021d565b5b5f6103548482850161031e565b91505092915050565b5f82825260208201905092915050565b7f53656e64206d6f726520455448000000000000000000000000000000000000005f82015250565b5f6103a1600d8361035d565b91506103ac8261036d565b602082019050919050565b5f6020820190508181035f8301526103ce81610395565b9050919050565b5f69ffffffffffffffffffff82169050919050565b6103f3816103d5565b81146103fd575f80fd5b50565b5f8151905061040e816103ea565b92915050565b61041d816102d7565b8114610427575f80fd5b50565b5f8151905061043881610414565b92915050565b5f8151905061044c81610308565b92915050565b5f805f805f60a0868803121561046b5761046a61021d565b5b5f61047888828901610400565b95505060206104898882890161042a565b945050604061049a8882890161043e565b93505060606104ab8882890161043e565b92505060806104bc88828901610400565b9150509295509295909350565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610500826102a6565b915061050b836102a6565b9250828202610519816102a6565b915082820484148315176105305761052f6104c9565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61056e826102a6565b9150610579836102a6565b92508261058957610588610537565b5b82820490509291505056fea26469706673582212204929cb025ea16aba87187dd39a401e222cdcb9a9ccd48b6b3dfaef9a091ec05664736f6c634300081a0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH9 0x56BC75E2D63100000 PUSH1 0x2 SSTORE CALLVALUE DUP1 ISZERO PUSH1 0x1B JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH20 0x694AA1769357215DE4FAC081BF1F309ADC325306 PUSH1 0x1 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x5CA DUP1 PUSH2 0x7D PUSH0 CODECOPY PUSH0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x3E JUMPI PUSH0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9F883A05 EQ PUSH2 0x42 JUMPI DUP1 PUSH4 0xB60D4288 EQ PUSH2 0x7E JUMPI DUP1 PUSH4 0xBEA4DFB5 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0xC086381E EQ PUSH2 0xB2 JUMPI JUMPDEST PUSH0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4D JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0x68 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x63 SWAP2 SWAP1 PUSH2 0x27B JUMP JUMPDEST PUSH2 0xEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x75 SWAP2 SWAP1 PUSH2 0x2BE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x86 PUSH2 0x102 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x93 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0x9C PUSH2 0x151 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA9 SWAP2 SWAP1 PUSH2 0x2EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBD JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0xD8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD3 SWAP2 SWAP1 PUSH2 0x332 JUMP JUMPDEST PUSH2 0x1EE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x2BE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH0 PUSH1 0x20 MSTORE DUP1 PUSH0 MSTORE PUSH1 0x40 PUSH0 KECCAK256 PUSH0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH2 0x10E CALLVALUE PUSH2 0x1EE JUMP JUMPDEST LT ISZERO PUSH2 0x14F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x146 SWAP1 PUSH2 0x3B7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH0 DUP1 PUSH1 0x1 PUSH0 SWAP1 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 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1BD JUMPI RETURNDATASIZE PUSH0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH0 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 0x1E1 SWAP2 SWAP1 PUSH2 0x452 JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x1F8 PUSH2 0x151 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP2 DUP5 PUSH2 0x20B SWAP2 SWAP1 PUSH2 0x4F6 JUMP JUMPDEST PUSH2 0x215 SWAP2 SWAP1 PUSH2 0x564 JUMP JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x24A DUP3 PUSH2 0x221 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25A DUP2 PUSH2 0x240 JUMP JUMPDEST DUP2 EQ PUSH2 0x264 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x275 DUP2 PUSH2 0x251 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x290 JUMPI PUSH2 0x28F PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x29D DUP5 DUP3 DUP6 ADD PUSH2 0x267 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2B8 DUP2 PUSH2 0x2A6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2D1 PUSH0 DUP4 ADD DUP5 PUSH2 0x2AF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2E9 DUP2 PUSH2 0x2D7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x302 PUSH0 DUP4 ADD DUP5 PUSH2 0x2E0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x311 DUP2 PUSH2 0x2A6 JUMP JUMPDEST DUP2 EQ PUSH2 0x31B JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x32C DUP2 PUSH2 0x308 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x347 JUMPI PUSH2 0x346 PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x354 DUP5 DUP3 DUP6 ADD PUSH2 0x31E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x53656E64206D6F72652045544800000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x3A1 PUSH1 0xD DUP4 PUSH2 0x35D JUMP JUMPDEST SWAP2 POP PUSH2 0x3AC DUP3 PUSH2 0x36D JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x3CE DUP2 PUSH2 0x395 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3F3 DUP2 PUSH2 0x3D5 JUMP JUMPDEST DUP2 EQ PUSH2 0x3FD JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x40E DUP2 PUSH2 0x3EA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x41D DUP2 PUSH2 0x2D7 JUMP JUMPDEST DUP2 EQ PUSH2 0x427 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x438 DUP2 PUSH2 0x414 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x44C DUP2 PUSH2 0x308 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 DUP1 PUSH0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x46B JUMPI PUSH2 0x46A PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x478 DUP9 DUP3 DUP10 ADD PUSH2 0x400 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x489 DUP9 DUP3 DUP10 ADD PUSH2 0x42A JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x49A DUP9 DUP3 DUP10 ADD PUSH2 0x43E JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x4AB DUP9 DUP3 DUP10 ADD PUSH2 0x43E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x4BC DUP9 DUP3 DUP10 ADD PUSH2 0x400 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x500 DUP3 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x50B DUP4 PUSH2 0x2A6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x519 DUP2 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x530 JUMPI PUSH2 0x52F PUSH2 0x4C9 JUMP JUMPDEST JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x56E DUP3 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x579 DUP4 PUSH2 0x2A6 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x589 JUMPI PUSH2 0x588 PUSH2 0x537 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 BLOBHASH 0x29 0xCB MUL MCOPY LOG1 PUSH11 0xBA87187DD39A401E222CDC 0xB9 0xA9 0xCC 0xD4 DUP12 PUSH12 0x3DFAEF9A091EC05664736F6C PUSH4 0x4300081A STOP CALLER ",
"sourceMap": "171:985:1:-:0;;;315:12;291:36;;333:106;;;;;;;;;;389:42;356:8;;:76;;;;;;;;;;;;;;;;;;171:985;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@convertEthToUsd_127": {
"entryPoint": 494,
"id": 127,
"parameterSlots": 1,
"returnSlots": 1
},
"@fund_87": {
"entryPoint": 258,
"id": 87,
"parameterSlots": 0,
"returnSlots": 0
},
"@fundersToAmount_53": {
"entryPoint": 238,
"id": 53,
"parameterSlots": 0,
"returnSlots": 0
},
"@getChainlinkDataFeedLatestAnswer_102": {
"entryPoint": 337,
"id": 102,
"parameterSlots": 0,
"returnSlots": 1
},
"abi_decode_t_address": {
"entryPoint": 615,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_int256_fromMemory": {
"entryPoint": 1066,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256": {
"entryPoint": 798,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256_fromMemory": {
"entryPoint": 1086,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint80_fromMemory": {
"entryPoint": 1024,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_address": {
"entryPoint": 635,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256": {
"entryPoint": 818,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory": {
"entryPoint": 1106,
"id": null,
"parameterSlots": 2,
"returnSlots": 5
},
"abi_encode_t_int256_to_t_int256_fromStack": {
"entryPoint": 736,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack": {
"entryPoint": 917,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 687,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed": {
"entryPoint": 751,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 951,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": 702,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 861,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_div_t_uint256": {
"entryPoint": 1380,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_mul_t_uint256": {
"entryPoint": 1270,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_address": {
"entryPoint": 576,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_int256": {
"entryPoint": 727,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 545,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 678,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint80": {
"entryPoint": 981,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 1225,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x12": {
"entryPoint": 1335,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 541,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8": {
"entryPoint": 877,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address": {
"entryPoint": 593,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_int256": {
"entryPoint": 1044,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 776,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint80": {
"entryPoint": 1002,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nativeSrc": "0:6546:2",
"nodeType": "YulBlock",
"src": "0:6546:2",
"statements": [
{
"body": {
"nativeSrc": "47:35:2",
"nodeType": "YulBlock",
"src": "47:35:2",
"statements": [
{
"nativeSrc": "57:19:2",
"nodeType": "YulAssignment",
"src": "57:19:2",
"value": {
"arguments": [
{
"kind": "number",
"nativeSrc": "73:2:2",
"nodeType": "YulLiteral",
"src": "73:2:2",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "67:5:2",
"nodeType": "YulIdentifier",
"src": "67:5:2"
},
"nativeSrc": "67:9:2",
"nodeType": "YulFunctionCall",
"src": "67:9:2"
},
"variableNames": [
{
"name": "memPtr",
"nativeSrc": "57:6:2",
"nodeType": "YulIdentifier",
"src": "57:6:2"
}
]
}
]
},
"name": "allocate_unbounded",
"nativeSrc": "7:75:2",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nativeSrc": "40:6:2",
"nodeType": "YulTypedName",
"src": "40:6:2",
"type": ""
}
],
"src": "7:75:2"
},
{
"body": {
"nativeSrc": "177:28:2",
"nodeType": "YulBlock",
"src": "177:28:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "194:1:2",
"nodeType": "YulLiteral",
"src": "194:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "197:1:2",
"nodeType": "YulLiteral",
"src": "197:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "187:6:2",
"nodeType": "YulIdentifier",
"src": "187:6:2"
},
"nativeSrc": "187:12:2",
"nodeType": "YulFunctionCall",
"src": "187:12:2"
},
"nativeSrc": "187:12:2",
"nodeType": "YulExpressionStatement",
"src": "187:12:2"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "88:117:2",
"nodeType": "YulFunctionDefinition",
"src": "88:117:2"
},
{
"body": {
"nativeSrc": "300:28:2",
"nodeType": "YulBlock",
"src": "300:28:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "317:1:2",
"nodeType": "YulLiteral",
"src": "317:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "320:1:2",
"nodeType": "YulLiteral",
"src": "320:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "310:6:2",
"nodeType": "YulIdentifier",
"src": "310:6:2"
},
"nativeSrc": "310:12:2",
"nodeType": "YulFunctionCall",
"src": "310:12:2"
},
"nativeSrc": "310:12:2",
"nodeType": "YulExpressionStatement",
"src": "310:12:2"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nativeSrc": "211:117:2",
"nodeType": "YulFunctionDefinition",
"src": "211:117:2"
},
{
"body": {
"nativeSrc": "379:81:2",
"nodeType": "YulBlock",
"src": "379:81:2",
"statements": [
{
"nativeSrc": "389:65:2",
"nodeType": "YulAssignment",
"src": "389:65:2",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "404:5:2",
"nodeType": "YulIdentifier",
"src": "404:5:2"
},
{
"kind": "number",
"nativeSrc": "411:42:2",
"nodeType": "YulLiteral",
"src": "411:42:2",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nativeSrc": "400:3:2",
"nodeType": "YulIdentifier",
"src": "400:3:2"
},
"nativeSrc": "400:54:2",
"nodeType": "YulFunctionCall",
"src": "400:54:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "389:7:2",
"nodeType": "YulIdentifier",
"src": "389:7:2"
}
]
}
]
},
"name": "cleanup_t_uint160",
"nativeSrc": "334:126:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "361:5:2",
"nodeType": "YulTypedName",
"src": "361:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "371:7:2",
"nodeType": "YulTypedName",
"src": "371:7:2",
"type": ""
}
],
"src": "334:126:2"
},
{
"body": {
"nativeSrc": "511:51:2",
"nodeType": "YulBlock",
"src": "511:51:2",
"statements": [
{
"nativeSrc": "521:35:2",
"nodeType": "YulAssignment",
"src": "521:35:2",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "550:5:2",
"nodeType": "YulIdentifier",
"src": "550:5:2"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nativeSrc": "532:17:2",
"nodeType": "YulIdentifier",
"src": "532:17:2"
},
"nativeSrc": "532:24:2",
"nodeType": "YulFunctionCall",
"src": "532:24:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "521:7:2",
"nodeType": "YulIdentifier",
"src": "521:7:2"
}
]
}
]
},
"name": "cleanup_t_address",
"nativeSrc": "466:96:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "493:5:2",
"nodeType": "YulTypedName",
"src": "493:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "503:7:2",
"nodeType": "YulTypedName",
"src": "503:7:2",
"type": ""
}
],
"src": "466:96:2"
},
{
"body": {
"nativeSrc": "611:79:2",
"nodeType": "YulBlock",
"src": "611:79:2",
"statements": [
{
"body": {
"nativeSrc": "668:16:2",
"nodeType": "YulBlock",
"src": "668:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "677:1:2",
"nodeType": "YulLiteral",
"src": "677:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "680:1:2",
"nodeType": "YulLiteral",
"src": "680:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "670:6:2",
"nodeType": "YulIdentifier",
"src": "670:6:2"
},
"nativeSrc": "670:12:2",
"nodeType": "YulFunctionCall",
"src": "670:12:2"
},
"nativeSrc": "670:12:2",
"nodeType": "YulExpressionStatement",
"src": "670:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "634:5:2",
"nodeType": "YulIdentifier",
"src": "634:5:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "659:5:2",
"nodeType": "YulIdentifier",
"src": "659:5:2"
}
],
"functionName": {
"name": "cleanup_t_address",
"nativeSrc": "641:17:2",
"nodeType": "YulIdentifier",
"src": "641:17:2"
},
"nativeSrc": "641:24:2",
"nodeType": "YulFunctionCall",
"src": "641:24:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "631:2:2",
"nodeType": "YulIdentifier",
"src": "631:2:2"
},
"nativeSrc": "631:35:2",
"nodeType": "YulFunctionCall",
"src": "631:35:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "624:6:2",
"nodeType": "YulIdentifier",
"src": "624:6:2"
},
"nativeSrc": "624:43:2",
"nodeType": "YulFunctionCall",
"src": "624:43:2"
},
"nativeSrc": "621:63:2",
"nodeType": "YulIf",
"src": "621:63:2"
}
]
},
"name": "validator_revert_t_address",
"nativeSrc": "568:122:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "604:5:2",
"nodeType": "YulTypedName",
"src": "604:5:2",
"type": ""
}
],
"src": "568:122:2"
},
{
"body": {
"nativeSrc": "748:87:2",
"nodeType": "YulBlock",
"src": "748:87:2",
"statements": [
{
"nativeSrc": "758:29:2",
"nodeType": "YulAssignment",
"src": "758:29:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "780:6:2",
"nodeType": "YulIdentifier",
"src": "780:6:2"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "767:12:2",
"nodeType": "YulIdentifier",
"src": "767:12:2"
},
"nativeSrc": "767:20:2",
"nodeType": "YulFunctionCall",
"src": "767:20:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "758:5:2",
"nodeType": "YulIdentifier",
"src": "758:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "823:5:2",
"nodeType": "YulIdentifier",
"src": "823:5:2"
}
],
"functionName": {
"name": "validator_revert_t_address",
"nativeSrc": "796:26:2",
"nodeType": "YulIdentifier",
"src": "796:26:2"
},
"nativeSrc": "796:33:2",
"nodeType": "YulFunctionCall",
"src": "796:33:2"
},
"nativeSrc": "796:33:2",
"nodeType": "YulExpressionStatement",
"src": "796:33:2"
}
]
},
"name": "abi_decode_t_address",
"nativeSrc": "696:139:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "726:6:2",
"nodeType": "YulTypedName",
"src": "726:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "734:3:2",
"nodeType": "YulTypedName",
"src": "734:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "742:5:2",
"nodeType": "YulTypedName",
"src": "742:5:2",
"type": ""
}
],
"src": "696:139:2"
},
{
"body": {
"nativeSrc": "907:263:2",
"nodeType": "YulBlock",
"src": "907:263:2",
"statements": [
{
"body": {
"nativeSrc": "953:83:2",
"nodeType": "YulBlock",
"src": "953:83:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "955:77:2",
"nodeType": "YulIdentifier",
"src": "955:77:2"
},
"nativeSrc": "955:79:2",
"nodeType": "YulFunctionCall",
"src": "955:79:2"
},
"nativeSrc": "955:79:2",
"nodeType": "YulExpressionStatement",
"src": "955:79:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "928:7:2",
"nodeType": "YulIdentifier",
"src": "928:7:2"
},
{
"name": "headStart",
"nativeSrc": "937:9:2",
"nodeType": "YulIdentifier",
"src": "937:9:2"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "924:3:2",
"nodeType": "YulIdentifier",
"src": "924:3:2"
},
"nativeSrc": "924:23:2",
"nodeType": "YulFunctionCall",
"src": "924:23:2"
},
{
"kind": "number",
"nativeSrc": "949:2:2",
"nodeType": "YulLiteral",
"src": "949:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "920:3:2",
"nodeType": "YulIdentifier",
"src": "920:3:2"
},
"nativeSrc": "920:32:2",
"nodeType": "YulFunctionCall",
"src": "920:32:2"
},
"nativeSrc": "917:119:2",
"nodeType": "YulIf",
"src": "917:119:2"
},
{
"nativeSrc": "1046:117:2",
"nodeType": "YulBlock",
"src": "1046:117:2",
"statements": [
{
"nativeSrc": "1061:15:2",
"nodeType": "YulVariableDeclaration",
"src": "1061:15:2",
"value": {
"kind": "number",
"nativeSrc": "1075:1:2",
"nodeType": "YulLiteral",
"src": "1075:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "1065:6:2",
"nodeType": "YulTypedName",
"src": "1065:6:2",
"type": ""
}
]
},
{
"nativeSrc": "1090:63:2",
"nodeType": "YulAssignment",
"src": "1090:63:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "1125:9:2",
"nodeType": "YulIdentifier",
"src": "1125:9:2"
},
{
"name": "offset",
"nativeSrc": "1136:6:2",
"nodeType": "YulIdentifier",
"src": "1136:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1121:3:2",
"nodeType": "YulIdentifier",
"src": "1121:3:2"
},
"nativeSrc": "1121:22:2",
"nodeType": "YulFunctionCall",
"src": "1121:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "1145:7:2",
"nodeType": "YulIdentifier",
"src": "1145:7:2"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "1100:20:2",
"nodeType": "YulIdentifier",
"src": "1100:20:2"
},
"nativeSrc": "1100:53:2",
"nodeType": "YulFunctionCall",
"src": "1100:53:2"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "1090:6:2",
"nodeType": "YulIdentifier",
"src": "1090:6:2"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_address",
"nativeSrc": "841:329:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "877:9:2",
"nodeType": "YulTypedName",
"src": "877:9:2",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "888:7:2",
"nodeType": "YulTypedName",
"src": "888:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "900:6:2",
"nodeType": "YulTypedName",
"src": "900:6:2",
"type": ""
}
],
"src": "841:329:2"
},
{
"body": {
"nativeSrc": "1221:32:2",
"nodeType": "YulBlock",
"src": "1221:32:2",
"statements": [
{
"nativeSrc": "1231:16:2",
"nodeType": "YulAssignment",
"src": "1231:16:2",
"value": {
"name": "value",
"nativeSrc": "1242:5:2",
"nodeType": "YulIdentifier",
"src": "1242:5:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "1231:7:2",
"nodeType": "YulIdentifier",
"src": "1231:7:2"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nativeSrc": "1176:77:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1203:5:2",
"nodeType": "YulTypedName",
"src": "1203:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "1213:7:2",
"nodeType": "YulTypedName",
"src": "1213:7:2",
"type": ""
}
],
"src": "1176:77:2"
},
{
"body": {
"nativeSrc": "1324:53:2",
"nodeType": "YulBlock",
"src": "1324:53:2",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "1341:3:2",
"nodeType": "YulIdentifier",
"src": "1341:3:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "1364:5:2",
"nodeType": "YulIdentifier",
"src": "1364:5:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "1346:17:2",
"nodeType": "YulIdentifier",
"src": "1346:17:2"
},
"nativeSrc": "1346:24:2",
"nodeType": "YulFunctionCall",
"src": "1346:24:2"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "1334:6:2",
"nodeType": "YulIdentifier",
"src": "1334:6:2"
},
"nativeSrc": "1334:37:2",
"nodeType": "YulFunctionCall",
"src": "1334:37:2"
},
"nativeSrc": "1334:37:2",
"nodeType": "YulExpressionStatement",
"src": "1334:37:2"
}
]
},
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "1259:118:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1312:5:2",
"nodeType": "YulTypedName",
"src": "1312:5:2",
"type": ""
},
{
"name": "pos",
"nativeSrc": "1319:3:2",
"nodeType": "YulTypedName",
"src": "1319:3:2",
"type": ""
}
],
"src": "1259:118:2"
},
{
"body": {
"nativeSrc": "1481:124:2",
"nodeType": "YulBlock",
"src": "1481:124:2",
"statements": [
{
"nativeSrc": "1491:26:2",
"nodeType": "YulAssignment",
"src": "1491:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "1503:9:2",
"nodeType": "YulIdentifier",
"src": "1503:9:2"
},
{
"kind": "number",
"nativeSrc": "1514:2:2",
"nodeType": "YulLiteral",
"src": "1514:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1499:3:2",
"nodeType": "YulIdentifier",
"src": "1499:3:2"
},
"nativeSrc": "1499:18:2",
"nodeType": "YulFunctionCall",
"src": "1499:18:2"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "1491:4:2",
"nodeType": "YulIdentifier",
"src": "1491:4:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "1571:6:2",
"nodeType": "YulIdentifier",
"src": "1571:6:2"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "1584:9:2",
"nodeType": "YulIdentifier",
"src": "1584:9:2"
},
{
"kind": "number",
"nativeSrc": "1595:1:2",
"nodeType": "YulLiteral",
"src": "1595:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1580:3:2",
"nodeType": "YulIdentifier",
"src": "1580:3:2"
},
"nativeSrc": "1580:17:2",
"nodeType": "YulFunctionCall",
"src": "1580:17:2"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "1527:43:2",
"nodeType": "YulIdentifier",
"src": "1527:43:2"
},
"nativeSrc": "1527:71:2",
"nodeType": "YulFunctionCall",
"src": "1527:71:2"
},
"nativeSrc": "1527:71:2",
"nodeType": "YulExpressionStatement",
"src": "1527:71:2"
}
]
},
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
"nativeSrc": "1383:222:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "1453:9:2",
"nodeType": "YulTypedName",
"src": "1453:9:2",
"type": ""
},
{
"name": "value0",
"nativeSrc": "1465:6:2",
"nodeType": "YulTypedName",
"src": "1465:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "1476:4:2",
"nodeType": "YulTypedName",
"src": "1476:4:2",
"type": ""
}
],
"src": "1383:222:2"
},
{
"body": {
"nativeSrc": "1655:32:2",
"nodeType": "YulBlock",
"src": "1655:32:2",
"statements": [
{
"nativeSrc": "1665:16:2",
"nodeType": "YulAssignment",
"src": "1665:16:2",
"value": {
"name": "value",
"nativeSrc": "1676:5:2",
"nodeType": "YulIdentifier",
"src": "1676:5:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "1665:7:2",
"nodeType": "YulIdentifier",
"src": "1665:7:2"
}
]
}
]
},
"name": "cleanup_t_int256",
"nativeSrc": "1611:76:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1637:5:2",
"nodeType": "YulTypedName",
"src": "1637:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "1647:7:2",
"nodeType": "YulTypedName",
"src": "1647:7:2",
"type": ""
}
],
"src": "1611:76:2"
},
{
"body": {
"nativeSrc": "1756:52:2",
"nodeType": "YulBlock",
"src": "1756:52:2",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "1773:3:2",
"nodeType": "YulIdentifier",
"src": "1773:3:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "1795:5:2",
"nodeType": "YulIdentifier",
"src": "1795:5:2"
}
],
"functionName": {
"name": "cleanup_t_int256",
"nativeSrc": "1778:16:2",
"nodeType": "YulIdentifier",
"src": "1778:16:2"
},
"nativeSrc": "1778:23:2",
"nodeType": "YulFunctionCall",
"src": "1778:23:2"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "1766:6:2",
"nodeType": "YulIdentifier",
"src": "1766:6:2"
},
"nativeSrc": "1766:36:2",
"nodeType": "YulFunctionCall",
"src": "1766:36:2"
},
"nativeSrc": "1766:36:2",
"nodeType": "YulExpressionStatement",
"src": "1766:36:2"
}
]
},
"name": "abi_encode_t_int256_to_t_int256_fromStack",
"nativeSrc": "1693:115:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1744:5:2",
"nodeType": "YulTypedName",
"src": "1744:5:2",
"type": ""
},
{
"name": "pos",
"nativeSrc": "1751:3:2",
"nodeType": "YulTypedName",
"src": "1751:3:2",
"type": ""
}
],
"src": "1693:115:2"
},
{
"body": {
"nativeSrc": "1910:122:2",
"nodeType": "YulBlock",
"src": "1910:122:2",
"statements": [
{
"nativeSrc": "1920:26:2",
"nodeType": "YulAssignment",
"src": "1920:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "1932:9:2",
"nodeType": "YulIdentifier",
"src": "1932:9:2"
},
{
"kind": "number",
"nativeSrc": "1943:2:2",
"nodeType": "YulLiteral",
"src": "1943:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1928:3:2",
"nodeType": "YulIdentifier",
"src": "1928:3:2"
},
"nativeSrc": "1928:18:2",
"nodeType": "YulFunctionCall",
"src": "1928:18:2"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "1920:4:2",
"nodeType": "YulIdentifier",
"src": "1920:4:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "1998:6:2",
"nodeType": "YulIdentifier",
"src": "1998:6:2"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "2011:9:2",
"nodeType": "YulIdentifier",
"src": "2011:9:2"
},
{
"kind": "number",
"nativeSrc": "2022:1:2",
"nodeType": "YulLiteral",
"src": "2022:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2007:3:2",
"nodeType": "YulIdentifier",
"src": "2007:3:2"
},
"nativeSrc": "2007:17:2",
"nodeType": "YulFunctionCall",
"src": "2007:17:2"
}
],
"functionName": {
"name": "abi_encode_t_int256_to_t_int256_fromStack",
"nativeSrc": "1956:41:2",
"nodeType": "YulIdentifier",
"src": "1956:41:2"
},
"nativeSrc": "1956:69:2",
"nodeType": "YulFunctionCall",
"src": "1956:69:2"
},
"nativeSrc": "1956:69:2",
"nodeType": "YulExpressionStatement",
"src": "1956:69:2"
}
]
},
"name": "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed",
"nativeSrc": "1814:218:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "1882:9:2",
"nodeType": "YulTypedName",
"src": "1882:9:2",
"type": ""
},
{
"name": "value0",
"nativeSrc": "1894:6:2",
"nodeType": "YulTypedName",
"src": "1894:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "1905:4:2",
"nodeType": "YulTypedName",
"src": "1905:4:2",
"type": ""
}
],
"src": "1814:218:2"
},
{
"body": {
"nativeSrc": "2081:79:2",
"nodeType": "YulBlock",
"src": "2081:79:2",
"statements": [
{
"body": {
"nativeSrc": "2138:16:2",
"nodeType": "YulBlock",
"src": "2138:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "2147:1:2",
"nodeType": "YulLiteral",
"src": "2147:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "2150:1:2",
"nodeType": "YulLiteral",
"src": "2150:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "2140:6:2",
"nodeType": "YulIdentifier",
"src": "2140:6:2"
},
"nativeSrc": "2140:12:2",
"nodeType": "YulFunctionCall",
"src": "2140:12:2"
},
"nativeSrc": "2140:12:2",
"nodeType": "YulExpressionStatement",
"src": "2140:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "2104:5:2",
"nodeType": "YulIdentifier",
"src": "2104:5:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "2129:5:2",
"nodeType": "YulIdentifier",
"src": "2129:5:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "2111:17:2",
"nodeType": "YulIdentifier",
"src": "2111:17:2"
},
"nativeSrc": "2111:24:2",
"nodeType": "YulFunctionCall",
"src": "2111:24:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "2101:2:2",
"nodeType": "YulIdentifier",
"src": "2101:2:2"
},
"nativeSrc": "2101:35:2",
"nodeType": "YulFunctionCall",
"src": "2101:35:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "2094:6:2",
"nodeType": "YulIdentifier",
"src": "2094:6:2"
},
"nativeSrc": "2094:43:2",
"nodeType": "YulFunctionCall",
"src": "2094:43:2"
},
"nativeSrc": "2091:63:2",
"nodeType": "YulIf",
"src": "2091:63:2"
}
]
},
"name": "validator_revert_t_uint256",
"nativeSrc": "2038:122:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "2074:5:2",
"nodeType": "YulTypedName",
"src": "2074:5:2",
"type": ""
}
],
"src": "2038:122:2"
},
{
"body": {
"nativeSrc": "2218:87:2",
"nodeType": "YulBlock",
"src": "2218:87:2",
"statements": [
{
"nativeSrc": "2228:29:2",
"nodeType": "YulAssignment",
"src": "2228:29:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "2250:6:2",
"nodeType": "YulIdentifier",
"src": "2250:6:2"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "2237:12:2",
"nodeType": "YulIdentifier",
"src": "2237:12:2"
},
"nativeSrc": "2237:20:2",
"nodeType": "YulFunctionCall",
"src": "2237:20:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "2228:5:2",
"nodeType": "YulIdentifier",
"src": "2228:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "2293:5:2",
"nodeType": "YulIdentifier",
"src": "2293:5:2"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nativeSrc": "2266:26:2",
"nodeType": "YulIdentifier",
"src": "2266:26:2"
},
"nativeSrc": "2266:33:2",
"nodeType": "YulFunctionCall",
"src": "2266:33:2"
},
"nativeSrc": "2266:33:2",
"nodeType": "YulExpressionStatement",
"src": "2266:33:2"
}
]
},
"name": "abi_decode_t_uint256",
"nativeSrc": "2166:139:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "2196:6:2",
"nodeType": "YulTypedName",
"src": "2196:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "2204:3:2",
"nodeType": "YulTypedName",
"src": "2204:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "2212:5:2",
"nodeType": "YulTypedName",
"src": "2212:5:2",
"type": ""
}
],
"src": "2166:139:2"
},
{
"body": {
"nativeSrc": "2377:263:2",
"nodeType": "YulBlock",
"src": "2377:263:2",
"statements": [
{
"body": {
"nativeSrc": "2423:83:2",
"nodeType": "YulBlock",
"src": "2423:83:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "2425:77:2",
"nodeType": "YulIdentifier",
"src": "2425:77:2"
},
"nativeSrc": "2425:79:2",
"nodeType": "YulFunctionCall",
"src": "2425:79:2"
},
"nativeSrc": "2425:79:2",
"nodeType": "YulExpressionStatement",
"src": "2425:79:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "2398:7:2",
"nodeType": "YulIdentifier",
"src": "2398:7:2"
},
{
"name": "headStart",
"nativeSrc": "2407:9:2",
"nodeType": "YulIdentifier",
"src": "2407:9:2"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "2394:3:2",
"nodeType": "YulIdentifier",
"src": "2394:3:2"
},
"nativeSrc": "2394:23:2",
"nodeType": "YulFunctionCall",
"src": "2394:23:2"
},
{
"kind": "number",
"nativeSrc": "2419:2:2",
"nodeType": "YulLiteral",
"src": "2419:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "2390:3:2",
"nodeType": "YulIdentifier",
"src": "2390:3:2"
},
"nativeSrc": "2390:32:2",
"nodeType": "YulFunctionCall",
"src": "2390:32:2"
},
"nativeSrc": "2387:119:2",
"nodeType": "YulIf",
"src": "2387:119:2"
},
{
"nativeSrc": "2516:117:2",
"nodeType": "YulBlock",
"src": "2516:117:2",
"statements": [
{
"nativeSrc": "2531:15:2",
"nodeType": "YulVariableDeclaration",
"src": "2531:15:2",
"value": {
"kind": "number",
"nativeSrc": "2545:1:2",
"nodeType": "YulLiteral",
"src": "2545:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "2535:6:2",
"nodeType": "YulTypedName",
"src": "2535:6:2",
"type": ""
}
]
},
{
"nativeSrc": "2560:63:2",
"nodeType": "YulAssignment",
"src": "2560:63:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "2595:9:2",
"nodeType": "YulIdentifier",
"src": "2595:9:2"
},
{
"name": "offset",
"nativeSrc": "2606:6:2",
"nodeType": "YulIdentifier",
"src": "2606:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2591:3:2",
"nodeType": "YulIdentifier",
"src": "2591:3:2"
},
"nativeSrc": "2591:22:2",
"nodeType": "YulFunctionCall",
"src": "2591:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "2615:7:2",
"nodeType": "YulIdentifier",
"src": "2615:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nativeSrc": "2570:20:2",
"nodeType": "YulIdentifier",
"src": "2570:20:2"
},
"nativeSrc": "2570:53:2",
"nodeType": "YulFunctionCall",
"src": "2570:53:2"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "2560:6:2",
"nodeType": "YulIdentifier",
"src": "2560:6:2"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256",
"nativeSrc": "2311:329:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "2347:9:2",
"nodeType": "YulTypedName",
"src": "2347:9:2",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "2358:7:2",
"nodeType": "YulTypedName",
"src": "2358:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "2370:6:2",
"nodeType": "YulTypedName",
"src": "2370:6:2",
"type": ""
}
],
"src": "2311:329:2"
},
{
"body": {
"nativeSrc": "2742:73:2",
"nodeType": "YulBlock",
"src": "2742:73:2",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "2759:3:2",
"nodeType": "YulIdentifier",
"src": "2759:3:2"
},
{
"name": "length",
"nativeSrc": "2764:6:2",
"nodeType": "YulIdentifier",
"src": "2764:6:2"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "2752:6:2",
"nodeType": "YulIdentifier",
"src": "2752:6:2"
},
"nativeSrc": "2752:19:2",
"nodeType": "YulFunctionCall",
"src": "2752:19:2"
},
"nativeSrc": "2752:19:2",
"nodeType": "YulExpressionStatement",
"src": "2752:19:2"
},
{
"nativeSrc": "2780:29:2",
"nodeType": "YulAssignment",
"src": "2780:29:2",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "2799:3:2",
"nodeType": "YulIdentifier",
"src": "2799:3:2"
},
{
"kind": "number",
"nativeSrc": "2804:4:2",
"nodeType": "YulLiteral",
"src": "2804:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2795:3:2",
"nodeType": "YulIdentifier",
"src": "2795:3:2"
},
"nativeSrc": "2795:14:2",
"nodeType": "YulFunctionCall",
"src": "2795:14:2"
},
"variableNames": [
{
"name": "updated_pos",
"nativeSrc": "2780:11:2",
"nodeType": "YulIdentifier",
"src": "2780:11:2"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "2646:169:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "2714:3:2",
"nodeType": "YulTypedName",
"src": "2714:3:2",
"type": ""
},
{
"name": "length",
"nativeSrc": "2719:6:2",
"nodeType": "YulTypedName",
"src": "2719:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nativeSrc": "2730:11:2",
"nodeType": "YulTypedName",
"src": "2730:11:2",
"type": ""
}
],
"src": "2646:169:2"
},
{
"body": {
"nativeSrc": "2927:57:2",
"nodeType": "YulBlock",
"src": "2927:57:2",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "2949:6:2",
"nodeType": "YulIdentifier",
"src": "2949:6:2"
},
{
"kind": "number",
"nativeSrc": "2957:1:2",
"nodeType": "YulLiteral",
"src": "2957:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2945:3:2",
"nodeType": "YulIdentifier",
"src": "2945:3:2"
},
"nativeSrc": "2945:14:2",
"nodeType": "YulFunctionCall",
"src": "2945:14:2"
},
{
"hexValue": "53656e64206d6f726520455448",
"kind": "string",
"nativeSrc": "2961:15:2",
"nodeType": "YulLiteral",
"src": "2961:15:2",
"type": "",
"value": "Send more ETH"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "2938:6:2",
"nodeType": "YulIdentifier",
"src": "2938:6:2"
},
"nativeSrc": "2938:39:2",
"nodeType": "YulFunctionCall",
"src": "2938:39:2"
},
"nativeSrc": "2938:39:2",
"nodeType": "YulExpressionStatement",
"src": "2938:39:2"
}
]
},
"name": "store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8",
"nativeSrc": "2821:163:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "2919:6:2",
"nodeType": "YulTypedName",
"src": "2919:6:2",
"type": ""
}
],
"src": "2821:163:2"
},
{
"body": {
"nativeSrc": "3136:220:2",
"nodeType": "YulBlock",
"src": "3136:220:2",
"statements": [
{
"nativeSrc": "3146:74:2",
"nodeType": "YulAssignment",
"src": "3146:74:2",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "3212:3:2",
"nodeType": "YulIdentifier",
"src": "3212:3:2"
},
{
"kind": "number",
"nativeSrc": "3217:2:2",
"nodeType": "YulLiteral",
"src": "3217:2:2",
"type": "",
"value": "13"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "3153:58:2",
"nodeType": "YulIdentifier",
"src": "3153:58:2"
},
"nativeSrc": "3153:67:2",
"nodeType": "YulFunctionCall",
"src": "3153:67:2"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "3146:3:2",
"nodeType": "YulIdentifier",
"src": "3146:3:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "3318:3:2",
"nodeType": "YulIdentifier",
"src": "3318:3:2"
}
],
"functionName": {
"name": "store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8",
"nativeSrc": "3229:88:2",
"nodeType": "YulIdentifier",
"src": "3229:88:2"
},
"nativeSrc": "3229:93:2",
"nodeType": "YulFunctionCall",
"src": "3229:93:2"
},
"nativeSrc": "3229:93:2",
"nodeType": "YulExpressionStatement",
"src": "3229:93:2"
},
{
"nativeSrc": "3331:19:2",
"nodeType": "YulAssignment",
"src": "3331:19:2",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "3342:3:2",
"nodeType": "YulIdentifier",
"src": "3342:3:2"
},
{
"kind": "number",
"nativeSrc": "3347:2:2",
"nodeType": "YulLiteral",
"src": "3347:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3338:3:2",
"nodeType": "YulIdentifier",
"src": "3338:3:2"
},
"nativeSrc": "3338:12:2",
"nodeType": "YulFunctionCall",
"src": "3338:12:2"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "3331:3:2",
"nodeType": "YulIdentifier",
"src": "3331:3:2"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack",
"nativeSrc": "2990:366:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "3124:3:2",
"nodeType": "YulTypedName",
"src": "3124:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "3132:3:2",
"nodeType": "YulTypedName",
"src": "3132:3:2",
"type": ""
}
],
"src": "2990:366:2"
},
{
"body": {
"nativeSrc": "3533:248:2",
"nodeType": "YulBlock",
"src": "3533:248:2",
"statements": [
{
"nativeSrc": "3543:26:2",
"nodeType": "YulAssignment",
"src": "3543:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "3555:9:2",
"nodeType": "YulIdentifier",
"src": "3555:9:2"
},
{
"kind": "number",
"nativeSrc": "3566:2:2",
"nodeType": "YulLiteral",
"src": "3566:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3551:3:2",
"nodeType": "YulIdentifier",
"src": "3551:3:2"
},
"nativeSrc": "3551:18:2",
"nodeType": "YulFunctionCall",
"src": "3551:18:2"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "3543:4:2",
"nodeType": "YulIdentifier",
"src": "3543:4:2"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "3590:9:2",
"nodeType": "YulIdentifier",
"src": "3590:9:2"
},
{
"kind": "number",
"nativeSrc": "3601:1:2",
"nodeType": "YulLiteral",
"src": "3601:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3586:3:2",
"nodeType": "YulIdentifier",
"src": "3586:3:2"
},
"nativeSrc": "3586:17:2",
"nodeType": "YulFunctionCall",
"src": "3586:17:2"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "3609:4:2",
"nodeType": "YulIdentifier",
"src": "3609:4:2"
},
{
"name": "headStart",
"nativeSrc": "3615:9:2",
"nodeType": "YulIdentifier",
"src": "3615:9:2"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "3605:3:2",
"nodeType": "YulIdentifier",
"src": "3605:3:2"
},
"nativeSrc": "3605:20:2",
"nodeType": "YulFunctionCall",
"src": "3605:20:2"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "3579:6:2",
"nodeType": "YulIdentifier",
"src": "3579:6:2"
},
"nativeSrc": "3579:47:2",
"nodeType": "YulFunctionCall",
"src": "3579:47:2"
},
"nativeSrc": "3579:47:2",
"nodeType": "YulExpressionStatement",
"src": "3579:47:2"
},
{
"nativeSrc": "3635:139:2",
"nodeType": "YulAssignment",
"src": "3635:139:2",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "3769:4:2",
"nodeType": "YulIdentifier",
"src": "3769:4:2"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack",
"nativeSrc": "3643:124:2",
"nodeType": "YulIdentifier",
"src": "3643:124:2"
},
"nativeSrc": "3643:131:2",
"nodeType": "YulFunctionCall",
"src": "3643:131:2"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "3635:4:2",
"nodeType": "YulIdentifier",
"src": "3635:4:2"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "3362:419:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "3513:9:2",
"nodeType": "YulTypedName",
"src": "3513:9:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "3528:4:2",
"nodeType": "YulTypedName",
"src": "3528:4:2",
"type": ""
}
],
"src": "3362:419:2"
},
{
"body": {
"nativeSrc": "3831:61:2",
"nodeType": "YulBlock",
"src": "3831:61:2",
"statements": [
{
"nativeSrc": "3841:45:2",
"nodeType": "YulAssignment",
"src": "3841:45:2",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "3856:5:2",
"nodeType": "YulIdentifier",
"src": "3856:5:2"
},
{
"kind": "number",
"nativeSrc": "3863:22:2",
"nodeType": "YulLiteral",
"src": "3863:22:2",
"type": "",
"value": "0xffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nativeSrc": "3852:3:2",
"nodeType": "YulIdentifier",
"src": "3852:3:2"
},
"nativeSrc": "3852:34:2",
"nodeType": "YulFunctionCall",
"src": "3852:34:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "3841:7:2",
"nodeType": "YulIdentifier",
"src": "3841:7:2"
}
]
}
]
},
"name": "cleanup_t_uint80",
"nativeSrc": "3787:105:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "3813:5:2",
"nodeType": "YulTypedName",
"src": "3813:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "3823:7:2",
"nodeType": "YulTypedName",
"src": "3823:7:2",
"type": ""
}
],
"src": "3787:105:2"
},
{
"body": {
"nativeSrc": "3940:78:2",
"nodeType": "YulBlock",
"src": "3940:78:2",
"statements": [
{
"body": {
"nativeSrc": "3996:16:2",
"nodeType": "YulBlock",
"src": "3996:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "4005:1:2",
"nodeType": "YulLiteral",
"src": "4005:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "4008:1:2",
"nodeType": "YulLiteral",
"src": "4008:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "3998:6:2",
"nodeType": "YulIdentifier",
"src": "3998:6:2"
},
"nativeSrc": "3998:12:2",
"nodeType": "YulFunctionCall",
"src": "3998:12:2"
},
"nativeSrc": "3998:12:2",
"nodeType": "YulExpressionStatement",
"src": "3998:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "3963:5:2",
"nodeType": "YulIdentifier",
"src": "3963:5:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "3987:5:2",
"nodeType": "YulIdentifier",
"src": "3987:5:2"
}
],
"functionName": {
"name": "cleanup_t_uint80",
"nativeSrc": "3970:16:2",
"nodeType": "YulIdentifier",
"src": "3970:16:2"
},
"nativeSrc": "3970:23:2",
"nodeType": "YulFunctionCall",
"src": "3970:23:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "3960:2:2",
"nodeType": "YulIdentifier",
"src": "3960:2:2"
},
"nativeSrc": "3960:34:2",
"nodeType": "YulFunctionCall",
"src": "3960:34:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "3953:6:2",
"nodeType": "YulIdentifier",
"src": "3953:6:2"
},
"nativeSrc": "3953:42:2",
"nodeType": "YulFunctionCall",
"src": "3953:42:2"
},
"nativeSrc": "3950:62:2",
"nodeType": "YulIf",
"src": "3950:62:2"
}
]
},
"name": "validator_revert_t_uint80",
"nativeSrc": "3898:120:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "3933:5:2",
"nodeType": "YulTypedName",
"src": "3933:5:2",
"type": ""
}
],
"src": "3898:120:2"
},
{
"body": {
"nativeSrc": "4086:79:2",
"nodeType": "YulBlock",
"src": "4086:79:2",
"statements": [
{
"nativeSrc": "4096:22:2",
"nodeType": "YulAssignment",
"src": "4096:22:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "4111:6:2",
"nodeType": "YulIdentifier",
"src": "4111:6:2"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "4105:5:2",
"nodeType": "YulIdentifier",
"src": "4105:5:2"
},
"nativeSrc": "4105:13:2",
"nodeType": "YulFunctionCall",
"src": "4105:13:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "4096:5:2",
"nodeType": "YulIdentifier",
"src": "4096:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "4153:5:2",
"nodeType": "YulIdentifier",
"src": "4153:5:2"
}
],
"functionName": {
"name": "validator_revert_t_uint80",
"nativeSrc": "4127:25:2",
"nodeType": "YulIdentifier",
"src": "4127:25:2"
},
"nativeSrc": "4127:32:2",
"nodeType": "YulFunctionCall",
"src": "4127:32:2"
},
"nativeSrc": "4127:32:2",
"nodeType": "YulExpressionStatement",
"src": "4127:32:2"
}
]
},
"name": "abi_decode_t_uint80_fromMemory",
"nativeSrc": "4024:141:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "4064:6:2",
"nodeType": "YulTypedName",
"src": "4064:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "4072:3:2",
"nodeType": "YulTypedName",
"src": "4072:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "4080:5:2",
"nodeType": "YulTypedName",
"src": "4080:5:2",
"type": ""
}
],
"src": "4024:141:2"
},
{
"body": {
"nativeSrc": "4213:78:2",
"nodeType": "YulBlock",
"src": "4213:78:2",
"statements": [
{
"body": {
"nativeSrc": "4269:16:2",
"nodeType": "YulBlock",
"src": "4269:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "4278:1:2",
"nodeType": "YulLiteral",
"src": "4278:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "4281:1:2",
"nodeType": "YulLiteral",
"src": "4281:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "4271:6:2",
"nodeType": "YulIdentifier",
"src": "4271:6:2"
},
"nativeSrc": "4271:12:2",
"nodeType": "YulFunctionCall",
"src": "4271:12:2"
},
"nativeSrc": "4271:12:2",
"nodeType": "YulExpressionStatement",
"src": "4271:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "4236:5:2",
"nodeType": "YulIdentifier",
"src": "4236:5:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "4260:5:2",
"nodeType": "YulIdentifier",
"src": "4260:5:2"
}
],
"functionName": {
"name": "cleanup_t_int256",
"nativeSrc": "4243:16:2",
"nodeType": "YulIdentifier",
"src": "4243:16:2"
},
"nativeSrc": "4243:23:2",
"nodeType": "YulFunctionCall",
"src": "4243:23:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "4233:2:2",
"nodeType": "YulIdentifier",
"src": "4233:2:2"
},
"nativeSrc": "4233:34:2",
"nodeType": "YulFunctionCall",
"src": "4233:34:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "4226:6:2",
"nodeType": "YulIdentifier",
"src": "4226:6:2"
},
"nativeSrc": "4226:42:2",
"nodeType": "YulFunctionCall",
"src": "4226:42:2"
},
"nativeSrc": "4223:62:2",
"nodeType": "YulIf",
"src": "4223:62:2"
}
]
},
"name": "validator_revert_t_int256",
"nativeSrc": "4171:120:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "4206:5:2",
"nodeType": "YulTypedName",
"src": "4206:5:2",
"type": ""
}
],
"src": "4171:120:2"
},
{
"body": {
"nativeSrc": "4359:79:2",
"nodeType": "YulBlock",
"src": "4359:79:2",
"statements": [
{
"nativeSrc": "4369:22:2",
"nodeType": "YulAssignment",
"src": "4369:22:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "4384:6:2",
"nodeType": "YulIdentifier",
"src": "4384:6:2"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "4378:5:2",
"nodeType": "YulIdentifier",
"src": "4378:5:2"
},
"nativeSrc": "4378:13:2",
"nodeType": "YulFunctionCall",
"src": "4378:13:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "4369:5:2",
"nodeType": "YulIdentifier",
"src": "4369:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "4426:5:2",
"nodeType": "YulIdentifier",
"src": "4426:5:2"
}
],
"functionName": {
"name": "validator_revert_t_int256",
"nativeSrc": "4400:25:2",
"nodeType": "YulIdentifier",
"src": "4400:25:2"
},
"nativeSrc": "4400:32:2",
"nodeType": "YulFunctionCall",
"src": "4400:32:2"
},
"nativeSrc": "4400:32:2",
"nodeType": "YulExpressionStatement",
"src": "4400:32:2"
}
]
},
"name": "abi_decode_t_int256_fromMemory",
"nativeSrc": "4297:141:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "4337:6:2",
"nodeType": "YulTypedName",
"src": "4337:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "4345:3:2",
"nodeType": "YulTypedName",
"src": "4345:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "4353:5:2",
"nodeType": "YulTypedName",
"src": "4353:5:2",
"type": ""
}
],
"src": "4297:141:2"
},
{
"body": {
"nativeSrc": "4507:80:2",
"nodeType": "YulBlock",
"src": "4507:80:2",
"statements": [
{
"nativeSrc": "4517:22:2",
"nodeType": "YulAssignment",
"src": "4517:22:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "4532:6:2",
"nodeType": "YulIdentifier",
"src": "4532:6:2"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "4526:5:2",
"nodeType": "YulIdentifier",
"src": "4526:5:2"
},
"nativeSrc": "4526:13:2",
"nodeType": "YulFunctionCall",
"src": "4526:13:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "4517:5:2",
"nodeType": "YulIdentifier",
"src": "4517:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "4575:5:2",
"nodeType": "YulIdentifier",
"src": "4575:5:2"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nativeSrc": "4548:26:2",
"nodeType": "YulIdentifier",
"src": "4548:26:2"
},
"nativeSrc": "4548:33:2",
"nodeType": "YulFunctionCall",
"src": "4548:33:2"
},
"nativeSrc": "4548:33:2",
"nodeType": "YulExpressionStatement",
"src": "4548:33:2"
}
]
},
"name": "abi_decode_t_uint256_fromMemory",
"nativeSrc": "4444:143:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "4485:6:2",
"nodeType": "YulTypedName",
"src": "4485:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "4493:3:2",
"nodeType": "YulTypedName",
"src": "4493:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "4501:5:2",
"nodeType": "YulTypedName",
"src": "4501:5:2",
"type": ""
}
],
"src": "4444:143:2"
},
{
"body": {
"nativeSrc": "4735:829:2",
"nodeType": "YulBlock",
"src": "4735:829:2",
"statements": [
{
"body": {
"nativeSrc": "4782:83:2",
"nodeType": "YulBlock",
"src": "4782:83:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "4784:77:2",
"nodeType": "YulIdentifier",
"src": "4784:77:2"
},
"nativeSrc": "4784:79:2",
"nodeType": "YulFunctionCall",
"src": "4784:79:2"
},
"nativeSrc": "4784:79:2",
"nodeType": "YulExpressionStatement",
"src": "4784:79:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "4756:7:2",
"nodeType": "YulIdentifier",
"src": "4756:7:2"
},
{
"name": "headStart",
"nativeSrc": "4765:9:2",
"nodeType": "YulIdentifier",
"src": "4765:9:2"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "4752:3:2",
"nodeType": "YulIdentifier",
"src": "4752:3:2"
},
"nativeSrc": "4752:23:2",
"nodeType": "YulFunctionCall",
"src": "4752:23:2"
},
{
"kind": "number",
"nativeSrc": "4777:3:2",
"nodeType": "YulLiteral",
"src": "4777:3:2",
"type": "",
"value": "160"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "4748:3:2",
"nodeType": "YulIdentifier",
"src": "4748:3:2"
},
"nativeSrc": "4748:33:2",
"nodeType": "YulFunctionCall",
"src": "4748:33:2"
},
"nativeSrc": "4745:120:2",
"nodeType": "YulIf",
"src": "4745:120:2"
},
{
"nativeSrc": "4875:127:2",
"nodeType": "YulBlock",
"src": "4875:127:2",
"statements": [
{
"nativeSrc": "4890:15:2",
"nodeType": "YulVariableDeclaration",
"src": "4890:15:2",
"value": {
"kind": "number",
"nativeSrc": "4904:1:2",
"nodeType": "YulLiteral",
"src": "4904:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "4894:6:2",
"nodeType": "YulTypedName",
"src": "4894:6:2",
"type": ""
}
]
},
{
"nativeSrc": "4919:73:2",
"nodeType": "YulAssignment",
"src": "4919:73:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "4964:9:2",
"nodeType": "YulIdentifier",
"src": "4964:9:2"
},
{
"name": "offset",
"nativeSrc": "4975:6:2",
"nodeType": "YulIdentifier",
"src": "4975:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "4960:3:2",
"nodeType": "YulIdentifier",
"src": "4960:3:2"
},
"nativeSrc": "4960:22:2",
"nodeType": "YulFunctionCall",
"src": "4960:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "4984:7:2",
"nodeType": "YulIdentifier",
"src": "4984:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint80_fromMemory",
"nativeSrc": "4929:30:2",
"nodeType": "YulIdentifier",
"src": "4929:30:2"
},
"nativeSrc": "4929:63:2",
"nodeType": "YulFunctionCall",
"src": "4929:63:2"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "4919:6:2",
"nodeType": "YulIdentifier",
"src": "4919:6:2"
}
]
}
]
},
{
"nativeSrc": "5012:128:2",
"nodeType": "YulBlock",
"src": "5012:128:2",
"statements": [
{
"nativeSrc": "5027:16:2",
"nodeType": "YulVariableDeclaration",
"src": "5027:16:2",
"value": {
"kind": "number",
"nativeSrc": "5041:2:2",
"nodeType": "YulLiteral",
"src": "5041:2:2",
"type": "",
"value": "32"
},
"variables": [
{
"name": "offset",
"nativeSrc": "5031:6:2",
"nodeType": "YulTypedName",
"src": "5031:6:2",
"type": ""
}
]
},
{
"nativeSrc": "5057:73:2",
"nodeType": "YulAssignment",
"src": "5057:73:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5102:9:2",
"nodeType": "YulIdentifier",
"src": "5102:9:2"
},
{
"name": "offset",
"nativeSrc": "5113:6:2",
"nodeType": "YulIdentifier",
"src": "5113:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5098:3:2",
"nodeType": "YulIdentifier",
"src": "5098:3:2"
},
"nativeSrc": "5098:22:2",
"nodeType": "YulFunctionCall",
"src": "5098:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "5122:7:2",
"nodeType": "YulIdentifier",
"src": "5122:7:2"
}
],
"functionName": {
"name": "abi_decode_t_int256_fromMemory",
"nativeSrc": "5067:30:2",
"nodeType": "YulIdentifier",
"src": "5067:30:2"
},
"nativeSrc": "5067:63:2",
"nodeType": "YulFunctionCall",
"src": "5067:63:2"
},
"variableNames": [
{
"name": "value1",
"nativeSrc": "5057:6:2",
"nodeType": "YulIdentifier",
"src": "5057:6:2"
}
]
}
]
},
{
"nativeSrc": "5150:129:2",
"nodeType": "YulBlock",
"src": "5150:129:2",
"statements": [
{
"nativeSrc": "5165:16:2",
"nodeType": "YulVariableDeclaration",
"src": "5165:16:2",
"value": {
"kind": "number",
"nativeSrc": "5179:2:2",
"nodeType": "YulLiteral",
"src": "5179:2:2",
"type": "",
"value": "64"
},
"variables": [
{
"name": "offset",
"nativeSrc": "5169:6:2",
"nodeType": "YulTypedName",
"src": "5169:6:2",
"type": ""
}
]
},
{
"nativeSrc": "5195:74:2",
"nodeType": "YulAssignment",
"src": "5195:74:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5241:9:2",
"nodeType": "YulIdentifier",
"src": "5241:9:2"
},
{
"name": "offset",
"nativeSrc": "5252:6:2",
"nodeType": "YulIdentifier",
"src": "5252:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5237:3:2",
"nodeType": "YulIdentifier",
"src": "5237:3:2"
},
"nativeSrc": "5237:22:2",
"nodeType": "YulFunctionCall",
"src": "5237:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "5261:7:2",
"nodeType": "YulIdentifier",
"src": "5261:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint256_fromMemory",
"nativeSrc": "5205:31:2",
"nodeType": "YulIdentifier",
"src": "5205:31:2"
},
"nativeSrc": "5205:64:2",
"nodeType": "YulFunctionCall",
"src": "5205:64:2"
},
"variableNames": [
{
"name": "value2",
"nativeSrc": "5195:6:2",
"nodeType": "YulIdentifier",
"src": "5195:6:2"
}
]
}
]
},
{
"nativeSrc": "5289:129:2",
"nodeType": "YulBlock",
"src": "5289:129:2",
"statements": [
{
"nativeSrc": "5304:16:2",
"nodeType": "YulVariableDeclaration",
"src": "5304:16:2",
"value": {
"kind": "number",
"nativeSrc": "5318:2:2",
"nodeType": "YulLiteral",
"src": "5318:2:2",
"type": "",
"value": "96"
},
"variables": [
{
"name": "offset",
"nativeSrc": "5308:6:2",
"nodeType": "YulTypedName",
"src": "5308:6:2",
"type": ""
}
]
},
{
"nativeSrc": "5334:74:2",
"nodeType": "YulAssignment",
"src": "5334:74:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5380:9:2",
"nodeType": "YulIdentifier",
"src": "5380:9:2"
},
{
"name": "offset",
"nativeSrc": "5391:6:2",
"nodeType": "YulIdentifier",
"src": "5391:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5376:3:2",
"nodeType": "YulIdentifier",
"src": "5376:3:2"
},
"nativeSrc": "5376:22:2",
"nodeType": "YulFunctionCall",
"src": "5376:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "5400:7:2",
"nodeType": "YulIdentifier",
"src": "5400:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint256_fromMemory",
"nativeSrc": "5344:31:2",
"nodeType": "YulIdentifier",
"src": "5344:31:2"
},
"nativeSrc": "5344:64:2",
"nodeType": "YulFunctionCall",
"src": "5344:64:2"
},
"variableNames": [
{
"name": "value3",
"nativeSrc": "5334:6:2",
"nodeType": "YulIdentifier",
"src": "5334:6:2"
}
]
}
]
},
{
"nativeSrc": "5428:129:2",
"nodeType": "YulBlock",
"src": "5428:129:2",
"statements": [
{
"nativeSrc": "5443:17:2",
"nodeType": "YulVariableDeclaration",
"src": "5443:17:2",
"value": {
"kind": "number",
"nativeSrc": "5457:3:2",
"nodeType": "YulLiteral",
"src": "5457:3:2",
"type": "",
"value": "128"
},
"variables": [
{
"name": "offset",
"nativeSrc": "5447:6:2",
"nodeType": "YulTypedName",
"src": "5447:6:2",
"type": ""
}
]
},
{
"nativeSrc": "5474:73:2",
"nodeType": "YulAssignment",
"src": "5474:73:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5519:9:2",
"nodeType": "YulIdentifier",
"src": "5519:9:2"
},
{
"name": "offset",
"nativeSrc": "5530:6:2",
"nodeType": "YulIdentifier",
"src": "5530:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5515:3:2",
"nodeType": "YulIdentifier",
"src": "5515:3:2"
},
"nativeSrc": "5515:22:2",
"nodeType": "YulFunctionCall",
"src": "5515:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "5539:7:2",
"nodeType": "YulIdentifier",
"src": "5539:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint80_fromMemory",
"nativeSrc": "5484:30:2",
"nodeType": "YulIdentifier",
"src": "5484:30:2"
},
"nativeSrc": "5484:63:2",
"nodeType": "YulFunctionCall",
"src": "5484:63:2"
},
"variableNames": [
{
"name": "value4",
"nativeSrc": "5474:6:2",
"nodeType": "YulIdentifier",
"src": "5474:6:2"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory",
"nativeSrc": "4593:971:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "4673:9:2",
"nodeType": "YulTypedName",
"src": "4673:9:2",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "4684:7:2",
"nodeType": "YulTypedName",
"src": "4684:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "4696:6:2",
"nodeType": "YulTypedName",
"src": "4696:6:2",
"type": ""
},
{
"name": "value1",
"nativeSrc": "4704:6:2",
"nodeType": "YulTypedName",
"src": "4704:6:2",
"type": ""
},
{
"name": "value2",
"nativeSrc": "4712:6:2",
"nodeType": "YulTypedName",
"src": "4712:6:2",
"type": ""
},
{
"name": "value3",
"nativeSrc": "4720:6:2",
"nodeType": "YulTypedName",
"src": "4720:6:2",
"type": ""
},
{
"name": "value4",
"nativeSrc": "4728:6:2",
"nodeType": "YulTypedName",
"src": "4728:6:2",
"type": ""
}
],
"src": "4593:971:2"
},
{
"body": {
"nativeSrc": "5598:152:2",
"nodeType": "YulBlock",
"src": "5598:152:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "5615:1:2",
"nodeType": "YulLiteral",
"src": "5615:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "5618:77:2",
"nodeType": "YulLiteral",
"src": "5618:77:2",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "5608:6:2",
"nodeType": "YulIdentifier",
"src": "5608:6:2"
},
"nativeSrc": "5608:88:2",
"nodeType": "YulFunctionCall",
"src": "5608:88:2"
},
"nativeSrc": "5608:88:2",
"nodeType": "YulExpressionStatement",
"src": "5608:88:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "5712:1:2",
"nodeType": "YulLiteral",
"src": "5712:1:2",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "5715:4:2",
"nodeType": "YulLiteral",
"src": "5715:4:2",
"type": "",
"value": "0x11"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "5705:6:2",
"nodeType": "YulIdentifier",
"src": "5705:6:2"
},
"nativeSrc": "5705:15:2",
"nodeType": "YulFunctionCall",
"src": "5705:15:2"
},
"nativeSrc": "5705:15:2",
"nodeType": "YulExpressionStatement",
"src": "5705:15:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "5736:1:2",
"nodeType": "YulLiteral",
"src": "5736:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "5739:4:2",
"nodeType": "YulLiteral",
"src": "5739:4:2",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "5729:6:2",
"nodeType": "YulIdentifier",
"src": "5729:6:2"
},
"nativeSrc": "5729:15:2",
"nodeType": "YulFunctionCall",
"src": "5729:15:2"
},
"nativeSrc": "5729:15:2",
"nodeType": "YulExpressionStatement",
"src": "5729:15:2"
}
]
},
"name": "panic_error_0x11",
"nativeSrc": "5570:180:2",
"nodeType": "YulFunctionDefinition",
"src": "5570:180:2"
},
{
"body": {
"nativeSrc": "5804:362:2",
"nodeType": "YulBlock",
"src": "5804:362:2",
"statements": [
{
"nativeSrc": "5814:25:2",
"nodeType": "YulAssignment",
"src": "5814:25:2",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "5837:1:2",
"nodeType": "YulIdentifier",
"src": "5837:1:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "5819:17:2",
"nodeType": "YulIdentifier",
"src": "5819:17:2"
},
"nativeSrc": "5819:20:2",
"nodeType": "YulFunctionCall",
"src": "5819:20:2"
},
"variableNames": [
{
"name": "x",
"nativeSrc": "5814:1:2",
"nodeType": "YulIdentifier",
"src": "5814:1:2"
}
]
},
{
"nativeSrc": "5848:25:2",
"nodeType": "YulAssignment",
"src": "5848:25:2",
"value": {
"arguments": [
{
"name": "y",
"nativeSrc": "5871:1:2",
"nodeType": "YulIdentifier",
"src": "5871:1:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "5853:17:2",
"nodeType": "YulIdentifier",
"src": "5853:17:2"
},
"nativeSrc": "5853:20:2",
"nodeType": "YulFunctionCall",
"src": "5853:20:2"
},
"variableNames": [
{
"name": "y",
"nativeSrc": "5848:1:2",
"nodeType": "YulIdentifier",
"src": "5848:1:2"
}
]
},
{
"nativeSrc": "5882:28:2",
"nodeType": "YulVariableDeclaration",
"src": "5882:28:2",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "5905:1:2",
"nodeType": "YulIdentifier",
"src": "5905:1:2"
},
{
"name": "y",
"nativeSrc": "5908:1:2",
"nodeType": "YulIdentifier",
"src": "5908:1:2"
}
],
"functionName": {
"name": "mul",
"nativeSrc": "5901:3:2",
"nodeType": "YulIdentifier",
"src": "5901:3:2"
},
"nativeSrc": "5901:9:2",
"nodeType": "YulFunctionCall",
"src": "5901:9:2"
},
"variables": [
{
"name": "product_raw",
"nativeSrc": "5886:11:2",
"nodeType": "YulTypedName",
"src": "5886:11:2",
"type": ""
}
]
},
{
"nativeSrc": "5919:41:2",
"nodeType": "YulAssignment",
"src": "5919:41:2",
"value": {
"arguments": [
{
"name": "product_raw",
"nativeSrc": "5948:11:2",
"nodeType": "YulIdentifier",
"src": "5948:11:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "5930:17:2",
"nodeType": "YulIdentifier",
"src": "5930:17:2"
},
"nativeSrc": "5930:30:2",
"nodeType": "YulFunctionCall",
"src": "5930:30:2"
},
"variableNames": [
{
"name": "product",
"nativeSrc": "5919:7:2",
"nodeType": "YulIdentifier",
"src": "5919:7:2"
}
]
},
{
"body": {
"nativeSrc": "6137:22:2",
"nodeType": "YulBlock",
"src": "6137:22:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nativeSrc": "6139:16:2",
"nodeType": "YulIdentifier",
"src": "6139:16:2"
},
"nativeSrc": "6139:18:2",
"nodeType": "YulFunctionCall",
"src": "6139:18:2"
},
"nativeSrc": "6139:18:2",
"nodeType": "YulExpressionStatement",
"src": "6139:18:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "x",
"nativeSrc": "6070:1:2",
"nodeType": "YulIdentifier",
"src": "6070:1:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "6063:6:2",
"nodeType": "YulIdentifier",
"src": "6063:6:2"
},
"nativeSrc": "6063:9:2",
"nodeType": "YulFunctionCall",
"src": "6063:9:2"
},
{
"arguments": [
{
"name": "y",
"nativeSrc": "6093:1:2",
"nodeType": "YulIdentifier",
"src": "6093:1:2"
},
{
"arguments": [
{
"name": "product",
"nativeSrc": "6100:7:2",
"nodeType": "YulIdentifier",
"src": "6100:7:2"
},
{
"name": "x",
"nativeSrc": "6109:1:2",
"nodeType": "YulIdentifier",
"src": "6109:1:2"
}
],
"functionName": {
"name": "div",
"nativeSrc": "6096:3:2",
"nodeType": "YulIdentifier",
"src": "6096:3:2"
},
"nativeSrc": "6096:15:2",
"nodeType": "YulFunctionCall",
"src": "6096:15:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "6090:2:2",
"nodeType": "YulIdentifier",
"src": "6090:2:2"
},
"nativeSrc": "6090:22:2",
"nodeType": "YulFunctionCall",
"src": "6090:22:2"
}
],
"functionName": {
"name": "or",
"nativeSrc": "6043:2:2",
"nodeType": "YulIdentifier",
"src": "6043:2:2"
},
"nativeSrc": "6043:83:2",
"nodeType": "YulFunctionCall",
"src": "6043:83:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "6023:6:2",
"nodeType": "YulIdentifier",
"src": "6023:6:2"
},
"nativeSrc": "6023:113:2",
"nodeType": "YulFunctionCall",
"src": "6023:113:2"
},
"nativeSrc": "6020:139:2",
"nodeType": "YulIf",
"src": "6020:139:2"
}
]
},
"name": "checked_mul_t_uint256",
"nativeSrc": "5756:410:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nativeSrc": "5787:1:2",
"nodeType": "YulTypedName",
"src": "5787:1:2",
"type": ""
},
{
"name": "y",
"nativeSrc": "5790:1:2",
"nodeType": "YulTypedName",
"src": "5790:1:2",
"type": ""
}
],
"returnVariables": [
{
"name": "product",
"nativeSrc": "5796:7:2",
"nodeType": "YulTypedName",
"src": "5796:7:2",
"type": ""
}
],
"src": "5756:410:2"
},
{
"body": {
"nativeSrc": "6200:152:2",
"nodeType": "YulBlock",
"src": "6200:152:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6217:1:2",
"nodeType": "YulLiteral",
"src": "6217:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "6220:77:2",
"nodeType": "YulLiteral",
"src": "6220:77:2",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "6210:6:2",
"nodeType": "YulIdentifier",
"src": "6210:6:2"
},
"nativeSrc": "6210:88:2",
"nodeType": "YulFunctionCall",
"src": "6210:88:2"
},
"nativeSrc": "6210:88:2",
"nodeType": "YulExpressionStatement",
"src": "6210:88:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6314:1:2",
"nodeType": "YulLiteral",
"src": "6314:1:2",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "6317:4:2",
"nodeType": "YulLiteral",
"src": "6317:4:2",
"type": "",
"value": "0x12"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "6307:6:2",
"nodeType": "YulIdentifier",
"src": "6307:6:2"
},
"nativeSrc": "6307:15:2",
"nodeType": "YulFunctionCall",
"src": "6307:15:2"
},
"nativeSrc": "6307:15:2",
"nodeType": "YulExpressionStatement",
"src": "6307:15:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6338:1:2",
"nodeType": "YulLiteral",
"src": "6338:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "6341:4:2",
"nodeType": "YulLiteral",
"src": "6341:4:2",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "6331:6:2",
"nodeType": "YulIdentifier",
"src": "6331:6:2"
},
"nativeSrc": "6331:15:2",
"nodeType": "YulFunctionCall",
"src": "6331:15:2"
},
"nativeSrc": "6331:15:2",
"nodeType": "YulExpressionStatement",
"src": "6331:15:2"
}
]
},
"name": "panic_error_0x12",
"nativeSrc": "6172:180:2",
"nodeType": "YulFunctionDefinition",
"src": "6172:180:2"
},
{
"body": {
"nativeSrc": "6400:143:2",
"nodeType": "YulBlock",
"src": "6400:143:2",
"statements": [
{
"nativeSrc": "6410:25:2",
"nodeType": "YulAssignment",
"src": "6410:25:2",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "6433:1:2",
"nodeType": "YulIdentifier",
"src": "6433:1:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "6415:17:2",
"nodeType": "YulIdentifier",
"src": "6415:17:2"
},
"nativeSrc": "6415:20:2",
"nodeType": "YulFunctionCall",
"src": "6415:20:2"
},
"variableNames": [
{
"name": "x",
"nativeSrc": "6410:1:2",
"nodeType": "YulIdentifier",
"src": "6410:1:2"
}
]
},
{
"nativeSrc": "6444:25:2",
"nodeType": "YulAssignment",
"src": "6444:25:2",
"value": {
"arguments": [
{
"name": "y",
"nativeSrc": "6467:1:2",
"nodeType": "YulIdentifier",
"src": "6467:1:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "6449:17:2",
"nodeType": "YulIdentifier",
"src": "6449:17:2"
},
"nativeSrc": "6449:20:2",
"nodeType": "YulFunctionCall",
"src": "6449:20:2"
},
"variableNames": [
{
"name": "y",
"nativeSrc": "6444:1:2",
"nodeType": "YulIdentifier",
"src": "6444:1:2"
}
]
},
{
"body": {
"nativeSrc": "6491:22:2",
"nodeType": "YulBlock",
"src": "6491:22:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x12",
"nativeSrc": "6493:16:2",
"nodeType": "YulIdentifier",
"src": "6493:16:2"
},
"nativeSrc": "6493:18:2",
"nodeType": "YulFunctionCall",
"src": "6493:18:2"
},
"nativeSrc": "6493:18:2",
"nodeType": "YulExpressionStatement",
"src": "6493:18:2"
}
]
},
"condition": {
"arguments": [
{
"name": "y",
"nativeSrc": "6488:1:2",
"nodeType": "YulIdentifier",
"src": "6488:1:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "6481:6:2",
"nodeType": "YulIdentifier",
"src": "6481:6:2"
},
"nativeSrc": "6481:9:2",
"nodeType": "YulFunctionCall",
"src": "6481:9:2"
},
"nativeSrc": "6478:35:2",
"nodeType": "YulIf",
"src": "6478:35:2"
},
{
"nativeSrc": "6523:14:2",
"nodeType": "YulAssignment",
"src": "6523:14:2",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "6532:1:2",
"nodeType": "YulIdentifier",
"src": "6532:1:2"
},
{
"name": "y",
"nativeSrc": "6535:1:2",
"nodeType": "YulIdentifier",
"src": "6535:1:2"
}
],
"functionName": {
"name": "div",
"nativeSrc": "6528:3:2",
"nodeType": "YulIdentifier",
"src": "6528:3:2"
},
"nativeSrc": "6528:9:2",
"nodeType": "YulFunctionCall",
"src": "6528:9:2"
},
"variableNames": [
{
"name": "r",
"nativeSrc": "6523:1:2",
"nodeType": "YulIdentifier",
"src": "6523:1:2"
}
]
}
]
},
"name": "checked_div_t_uint256",
"nativeSrc": "6358:185:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nativeSrc": "6389:1:2",
"nodeType": "YulTypedName",
"src": "6389:1:2",
"type": ""
},
{
"name": "y",
"nativeSrc": "6392:1:2",
"nodeType": "YulTypedName",
"src": "6392:1:2",
"type": ""
}
],
"returnVariables": [
{
"name": "r",
"nativeSrc": "6398:1:2",
"nodeType": "YulTypedName",
"src": "6398:1:2",
"type": ""
}
],
"src": "6358:185:2"
}
]
},
"contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_int256(value) -> cleaned {\n cleaned := value\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 validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8(memPtr) {\n\n mstore(add(memPtr, 0), \"Send more ETH\")\n\n }\n\n function abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 13)\n store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function cleanup_t_uint80(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffff)\n }\n\n function validator_revert_t_uint80(value) {\n if iszero(eq(value, cleanup_t_uint80(value))) { revert(0, 0) }\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 validator_revert_t_int256(value) {\n if iszero(eq(value, cleanup_t_int256(value))) { revert(0, 0) }\n }\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_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 panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n let product_raw := mul(x, y)\n product := cleanup_t_uint256(product_raw)\n\n // overflow, if x != 0 and y != product/x\n if iszero(\n or(\n iszero(x),\n eq(y, div(product, x))\n )\n ) { panic_error_0x11() }\n\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function checked_div_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n\n r := div(x, y)\n }\n\n}\n",
"id": 2,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "60806040526004361061003e575f3560e01c80639f883a0514610042578063b60d42881461007e578063bea4dfb514610088578063c086381e146100b2575b5f80fd5b34801561004d575f80fd5b506100686004803603810190610063919061027b565b6100ee565b60405161007591906102be565b60405180910390f35b610086610102565b005b348015610093575f80fd5b5061009c610151565b6040516100a991906102ef565b60405180910390f35b3480156100bd575f80fd5b506100d860048036038101906100d39190610332565b6101ee565b6040516100e591906102be565b60405180910390f35b5f602052805f5260405f205f915090505481565b60025461010e346101ee565b101561014f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610146906103b7565b60405180910390fd5b565b5f8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156101bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101e19190610452565b5050509150508091505090565b5f806101f8610151565b90506305f5e100818461020b91906104f6565b6102159190610564565b915050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61024a82610221565b9050919050565b61025a81610240565b8114610264575f80fd5b50565b5f8135905061027581610251565b92915050565b5f602082840312156102905761028f61021d565b5b5f61029d84828501610267565b91505092915050565b5f819050919050565b6102b8816102a6565b82525050565b5f6020820190506102d15f8301846102af565b92915050565b5f819050919050565b6102e9816102d7565b82525050565b5f6020820190506103025f8301846102e0565b92915050565b610311816102a6565b811461031b575f80fd5b50565b5f8135905061032c81610308565b92915050565b5f602082840312156103475761034661021d565b5b5f6103548482850161031e565b91505092915050565b5f82825260208201905092915050565b7f53656e64206d6f726520455448000000000000000000000000000000000000005f82015250565b5f6103a1600d8361035d565b91506103ac8261036d565b602082019050919050565b5f6020820190508181035f8301526103ce81610395565b9050919050565b5f69ffffffffffffffffffff82169050919050565b6103f3816103d5565b81146103fd575f80fd5b50565b5f8151905061040e816103ea565b92915050565b61041d816102d7565b8114610427575f80fd5b50565b5f8151905061043881610414565b92915050565b5f8151905061044c81610308565b92915050565b5f805f805f60a0868803121561046b5761046a61021d565b5b5f61047888828901610400565b95505060206104898882890161042a565b945050604061049a8882890161043e565b93505060606104ab8882890161043e565b92505060806104bc88828901610400565b9150509295509295909350565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610500826102a6565b915061050b836102a6565b9250828202610519816102a6565b915082820484148315176105305761052f6104c9565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61056e826102a6565b9150610579836102a6565b92508261058957610588610537565b5b82820490509291505056fea26469706673582212204929cb025ea16aba87187dd39a401e222cdcb9a9ccd48b6b3dfaef9a091ec05664736f6c634300081a0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x3E JUMPI PUSH0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9F883A05 EQ PUSH2 0x42 JUMPI DUP1 PUSH4 0xB60D4288 EQ PUSH2 0x7E JUMPI DUP1 PUSH4 0xBEA4DFB5 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0xC086381E EQ PUSH2 0xB2 JUMPI JUMPDEST PUSH0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4D JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0x68 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x63 SWAP2 SWAP1 PUSH2 0x27B JUMP JUMPDEST PUSH2 0xEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x75 SWAP2 SWAP1 PUSH2 0x2BE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x86 PUSH2 0x102 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x93 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0x9C PUSH2 0x151 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA9 SWAP2 SWAP1 PUSH2 0x2EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBD JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0xD8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD3 SWAP2 SWAP1 PUSH2 0x332 JUMP JUMPDEST PUSH2 0x1EE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x2BE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH0 PUSH1 0x20 MSTORE DUP1 PUSH0 MSTORE PUSH1 0x40 PUSH0 KECCAK256 PUSH0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH2 0x10E CALLVALUE PUSH2 0x1EE JUMP JUMPDEST LT ISZERO PUSH2 0x14F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x146 SWAP1 PUSH2 0x3B7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH0 DUP1 PUSH1 0x1 PUSH0 SWAP1 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 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1BD JUMPI RETURNDATASIZE PUSH0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH0 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 0x1E1 SWAP2 SWAP1 PUSH2 0x452 JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x1F8 PUSH2 0x151 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP2 DUP5 PUSH2 0x20B SWAP2 SWAP1 PUSH2 0x4F6 JUMP JUMPDEST PUSH2 0x215 SWAP2 SWAP1 PUSH2 0x564 JUMP JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x24A DUP3 PUSH2 0x221 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25A DUP2 PUSH2 0x240 JUMP JUMPDEST DUP2 EQ PUSH2 0x264 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x275 DUP2 PUSH2 0x251 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x290 JUMPI PUSH2 0x28F PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x29D DUP5 DUP3 DUP6 ADD PUSH2 0x267 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2B8 DUP2 PUSH2 0x2A6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2D1 PUSH0 DUP4 ADD DUP5 PUSH2 0x2AF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2E9 DUP2 PUSH2 0x2D7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x302 PUSH0 DUP4 ADD DUP5 PUSH2 0x2E0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x311 DUP2 PUSH2 0x2A6 JUMP JUMPDEST DUP2 EQ PUSH2 0x31B JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x32C DUP2 PUSH2 0x308 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x347 JUMPI PUSH2 0x346 PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x354 DUP5 DUP3 DUP6 ADD PUSH2 0x31E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x53656E64206D6F72652045544800000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x3A1 PUSH1 0xD DUP4 PUSH2 0x35D JUMP JUMPDEST SWAP2 POP PUSH2 0x3AC DUP3 PUSH2 0x36D JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x3CE DUP2 PUSH2 0x395 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3F3 DUP2 PUSH2 0x3D5 JUMP JUMPDEST DUP2 EQ PUSH2 0x3FD JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x40E DUP2 PUSH2 0x3EA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x41D DUP2 PUSH2 0x2D7 JUMP JUMPDEST DUP2 EQ PUSH2 0x427 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x438 DUP2 PUSH2 0x414 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x44C DUP2 PUSH2 0x308 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 DUP1 PUSH0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x46B JUMPI PUSH2 0x46A PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x478 DUP9 DUP3 DUP10 ADD PUSH2 0x400 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x489 DUP9 DUP3 DUP10 ADD PUSH2 0x42A JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x49A DUP9 DUP3 DUP10 ADD PUSH2 0x43E JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x4AB DUP9 DUP3 DUP10 ADD PUSH2 0x43E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x4BC DUP9 DUP3 DUP10 ADD PUSH2 0x400 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x500 DUP3 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x50B DUP4 PUSH2 0x2A6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x519 DUP2 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x530 JUMPI PUSH2 0x52F PUSH2 0x4C9 JUMP JUMPDEST JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x56E DUP3 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x579 DUP4 PUSH2 0x2A6 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x589 JUMPI PUSH2 0x588 PUSH2 0x537 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 BLOBHASH 0x29 0xCB MUL MCOPY LOG1 PUSH11 0xBA87187DD39A401E222CDC 0xB9 0xA9 0xCC 0xD4 DUP12 PUSH12 0x3DFAEF9A091EC05664736F6C PUSH4 0x4300081A STOP CALLER ",
"sourceMap": "171:985:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;192:48;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;445:118;;;:::i;:::-;;618:338;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;962:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;192:48;;;;;;;;;;;;;;;;;:::o;445:118::-;526:13;;496:26;512:9;496:15;:26::i;:::-;:43;;488:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;445:118::o;618:338::-;683:3;773:10;900:8;;;;;;;;;;;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;725:201;;;;;;943:6;936:13;;;618:338;:::o;962:192::-;1026:7;1044:13;1068:34;:32;:34::i;:::-;1044:59;;1140:6;1132:5;1120:9;:17;;;;:::i;:::-;:27;;;;:::i;:::-;1113:34;;;962:192;;;:::o;88:117:2:-;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:329::-;900:6;949:2;937:9;928:7;924:23;920:32;917:119;;;955:79;;:::i;:::-;917:119;1075:1;1100:53;1145:7;1136:6;1125:9;1121:22;1100:53;:::i;:::-;1090:63;;1046:117;841:329;;;;:::o;1176:77::-;1213:7;1242:5;1231:16;;1176:77;;;:::o;1259:118::-;1346:24;1364:5;1346:24;:::i;:::-;1341:3;1334:37;1259:118;;:::o;1383:222::-;1476:4;1514:2;1503:9;1499:18;1491:26;;1527:71;1595:1;1584:9;1580:17;1571:6;1527:71;:::i;:::-;1383:222;;;;:::o;1611:76::-;1647:7;1676:5;1665:16;;1611:76;;;:::o;1693:115::-;1778:23;1795:5;1778:23;:::i;:::-;1773:3;1766:36;1693:115;;:::o;1814:218::-;1905:4;1943:2;1932:9;1928:18;1920:26;;1956:69;2022:1;2011:9;2007:17;1998:6;1956:69;:::i;:::-;1814:218;;;;:::o;2038:122::-;2111:24;2129:5;2111:24;:::i;:::-;2104:5;2101:35;2091:63;;2150:1;2147;2140:12;2091:63;2038:122;:::o;2166:139::-;2212:5;2250:6;2237:20;2228:29;;2266:33;2293:5;2266:33;:::i;:::-;2166:139;;;;:::o;2311:329::-;2370:6;2419:2;2407:9;2398:7;2394:23;2390:32;2387:119;;;2425:79;;:::i;:::-;2387:119;2545:1;2570:53;2615:7;2606:6;2595:9;2591:22;2570:53;:::i;:::-;2560:63;;2516:117;2311:329;;;;:::o;2646:169::-;2730:11;2764:6;2759:3;2752:19;2804:4;2799:3;2795:14;2780:29;;2646:169;;;;:::o;2821:163::-;2961:15;2957:1;2949:6;2945:14;2938:39;2821:163;:::o;2990:366::-;3132:3;3153:67;3217:2;3212:3;3153:67;:::i;:::-;3146:74;;3229:93;3318:3;3229:93;:::i;:::-;3347:2;3342:3;3338:12;3331:19;;2990:366;;;:::o;3362:419::-;3528:4;3566:2;3555:9;3551:18;3543:26;;3615:9;3609:4;3605:20;3601:1;3590:9;3586:17;3579:47;3643:131;3769:4;3643:131;:::i;:::-;3635:139;;3362:419;;;:::o;3787:105::-;3823:7;3863:22;3856:5;3852:34;3841:45;;3787:105;;;:::o;3898:120::-;3970:23;3987:5;3970:23;:::i;:::-;3963:5;3960:34;3950:62;;4008:1;4005;3998:12;3950:62;3898:120;:::o;4024:141::-;4080:5;4111:6;4105:13;4096:22;;4127:32;4153:5;4127:32;:::i;:::-;4024:141;;;;:::o;4171:120::-;4243:23;4260:5;4243:23;:::i;:::-;4236:5;4233:34;4223:62;;4281:1;4278;4271:12;4223:62;4171:120;:::o;4297:141::-;4353:5;4384:6;4378:13;4369:22;;4400:32;4426:5;4400:32;:::i;:::-;4297:141;;;;:::o;4444:143::-;4501:5;4532:6;4526:13;4517:22;;4548:33;4575:5;4548:33;:::i;:::-;4444:143;;;;:::o;4593:971::-;4696:6;4704;4712;4720;4728;4777:3;4765:9;4756:7;4752:23;4748:33;4745:120;;;4784:79;;:::i;:::-;4745:120;4904:1;4929:63;4984:7;4975:6;4964:9;4960:22;4929:63;:::i;:::-;4919:73;;4875:127;5041:2;5067:63;5122:7;5113:6;5102:9;5098:22;5067:63;:::i;:::-;5057:73;;5012:128;5179:2;5205:64;5261:7;5252:6;5241:9;5237:22;5205:64;:::i;:::-;5195:74;;5150:129;5318:2;5344:64;5400:7;5391:6;5380:9;5376:22;5344:64;:::i;:::-;5334:74;;5289:129;5457:3;5484:63;5539:7;5530:6;5519:9;5515:22;5484:63;:::i;:::-;5474:73;;5428:129;4593:971;;;;;;;;:::o;5570:180::-;5618:77;5615:1;5608:88;5715:4;5712:1;5705:15;5739:4;5736:1;5729:15;5756:410;5796:7;5819:20;5837:1;5819:20;:::i;:::-;5814:25;;5853:20;5871:1;5853:20;:::i;:::-;5848:25;;5908:1;5905;5901:9;5930:30;5948:11;5930:30;:::i;:::-;5919:41;;6109:1;6100:7;6096:15;6093:1;6090:22;6070:1;6063:9;6043:83;6020:139;;6139:18;;:::i;:::-;6020:139;5804:362;5756:410;;;;:::o;6172:180::-;6220:77;6217:1;6210:88;6317:4;6314:1;6307:15;6341:4;6338:1;6331:15;6358:185;6398:1;6415:20;6433:1;6415:20;:::i;:::-;6410:25;;6449:20;6467:1;6449:20;:::i;:::-;6444:25;;6488:1;6478:35;;6493:18;;:::i;:::-;6478:35;6535:1;6532;6528:9;6523:14;;6358:185;;;;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "296400",
"executionCost": "46707",
"totalCost": "343107"
},
"external": {
"convertEthToUsd(uint256)": "infinite",
"fund()": "infinite",
"fundersToAmount(address)": "2779",
"getChainlinkDataFeedLatestAnswer()": "infinite"
}
},
"legacyAssembly": {
".code": [
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "80"
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 171,
"end": 1156,
"name": "MSTORE",
"source": 1
},
{
"begin": 315,
"end": 327,
"name": "PUSH",
"source": 1,
"value": "56BC75E2D63100000"
},
{
"begin": 291,
"end": 327,
"name": "PUSH",
"source": 1,
"value": "2"
},
{
"begin": 291,
"end": 327,
"name": "SSTORE",
"source": 1
},
{
"begin": 333,
"end": 439,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 333,
"end": 439,
"name": "DUP1",
"source": 1
},
{
"begin": 333,
"end": 439,
"name": "ISZERO",
"source": 1
},
{
"begin": 333,
"end": 439,
"name": "PUSH [tag]",
"source": 1,
"value": "1"
},
{
"begin": 333,
"end": 439,
"name": "JUMPI",
"source": 1
},
{
"begin": 333,
"end": 439,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 333,
"end": 439,
"name": "DUP1",
"source": 1
},
{
"begin": 333,
"end": 439,
"name": "REVERT",
"source": 1
},
{
"begin": 333,
"end": 439,
"name": "tag",
"source": 1,
"value": "1"
},
{
"begin": 333,
"end": 439,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 333,
"end": 439,
"name": "POP",
"source": 1
},
{
"begin": 389,
"end": 431,
"name": "PUSH",
"source": 1,
"value": "694AA1769357215DE4FAC081BF1F309ADC325306"
},
{
"begin": 356,
"end": 364,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 356,
"end": 364,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 356,
"end": 432,
"name": "PUSH",
"source": 1,
"value": "100"
},
{
"begin": 356,
"end": 432,
"name": "EXP",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "DUP2",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "SLOAD",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "DUP2",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 356,
"end": 432,
"name": "MUL",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "NOT",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "AND",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "SWAP1",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "DUP4",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 356,
"end": 432,
"name": "AND",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "MUL",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "OR",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "SWAP1",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "SSTORE",
"source": 1
},
{
"begin": 356,
"end": 432,
"name": "POP",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH #[$]",
"source": 1,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 171,
"end": 1156,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH [$]",
"source": 1,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 171,
"end": 1156,
"name": "CODECOPY",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 171,
"end": 1156,
"name": "RETURN",
"source": 1
}
],
".data": {
"0": {
".auxdata": "a26469706673582212204929cb025ea16aba87187dd39a401e222cdcb9a9ccd48b6b3dfaef9a091ec05664736f6c634300081a0033",
".code": [
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "80"
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 171,
"end": 1156,
"name": "MSTORE",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 171,
"end": 1156,
"name": "CALLDATASIZE",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "LT",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH [tag]",
"source": 1,
"value": "1"
},
{
"begin": 171,
"end": 1156,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 171,
"end": 1156,
"name": "CALLDATALOAD",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "E0"
},
{
"begin": 171,
"end": 1156,
"name": "SHR",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "9F883A05"
},
{
"begin": 171,
"end": 1156,
"name": "EQ",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH [tag]",
"source": 1,
"value": "2"
},
{
"begin": 171,
"end": 1156,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "B60D4288"
},
{
"begin": 171,
"end": 1156,
"name": "EQ",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH [tag]",
"source": 1,
"value": "3"
},
{
"begin": 171,
"end": 1156,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "BEA4DFB5"
},
{
"begin": 171,
"end": 1156,
"name": "EQ",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH [tag]",
"source": 1,
"value": "4"
},
{
"begin": 171,
"end": 1156,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "C086381E"
},
{
"begin": 171,
"end": 1156,
"name": "EQ",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH [tag]",
"source": 1,
"value": "5"
},
{
"begin": 171,
"end": 1156,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "tag",
"source": 1,
"value": "1"
},
{
"begin": 171,
"end": 1156,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 171,
"end": 1156,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1156,
"name": "REVERT",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "tag",
"source": 1,
"value": "2"
},
{
"begin": 192,
"end": 240,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "DUP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "ISZERO",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH [tag]",
"source": 1,
"value": "6"
},
{
"begin": 192,
"end": 240,
"name": "JUMPI",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 192,
"end": 240,
"name": "DUP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "REVERT",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "tag",
"source": 1,
"value": "6"
},
{
"begin": 192,
"end": 240,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "POP",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH [tag]",
"source": 1,
"value": "7"
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 192,
"end": 240,
"name": "DUP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "CALLDATASIZE",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "SUB",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "DUP2",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "ADD",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "SWAP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH [tag]",
"source": 1,
"value": "8"
},
{
"begin": 192,
"end": 240,
"name": "SWAP2",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "SWAP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH [tag]",
"source": 1,
"value": "9"
},
{
"begin": 192,
"end": 240,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "tag",
"source": 1,
"value": "8"
},
{
"begin": 192,
"end": 240,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH [tag]",
"source": 1,
"value": "10"
},
{
"begin": 192,
"end": 240,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "tag",
"source": 1,
"value": "7"
},
{
"begin": 192,
"end": 240,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 192,
"end": 240,
"name": "MLOAD",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH [tag]",
"source": 1,
"value": "11"
},
{
"begin": 192,
"end": 240,
"name": "SWAP2",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "SWAP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH [tag]",
"source": 1,
"value": "12"
},
{
"begin": 192,
"end": 240,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "tag",
"source": 1,
"value": "11"
},
{
"begin": 192,
"end": 240,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 192,
"end": 240,
"name": "MLOAD",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "DUP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "SWAP2",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "SUB",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "SWAP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "RETURN",
"source": 1
},
{
"begin": 445,
"end": 563,
"name": "tag",
"source": 1,
"value": "3"
},
{
"begin": 445,
"end": 563,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 445,
"end": 563,
"name": "PUSH [tag]",
"source": 1,
"value": "13"
},
{
"begin": 445,
"end": 563,
"name": "PUSH [tag]",
"source": 1,
"value": "14"
},
{
"begin": 445,
"end": 563,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 445,
"end": 563,
"name": "tag",
"source": 1,
"value": "13"
},
{
"begin": 445,
"end": 563,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 445,
"end": 563,
"name": "STOP",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "tag",
"source": 1,
"value": "4"
},
{
"begin": 618,
"end": 956,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "DUP1",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "ISZERO",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "PUSH [tag]",
"source": 1,
"value": "15"
},
{
"begin": 618,
"end": 956,
"name": "JUMPI",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 618,
"end": 956,
"name": "DUP1",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "REVERT",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "tag",
"source": 1,
"value": "15"
},
{
"begin": 618,
"end": 956,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "POP",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "PUSH [tag]",
"source": 1,
"value": "16"
},
{
"begin": 618,
"end": 956,
"name": "PUSH [tag]",
"source": 1,
"value": "17"
},
{
"begin": 618,
"end": 956,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "tag",
"source": 1,
"value": "16"
},
{
"begin": 618,
"end": 956,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 618,
"end": 956,
"name": "MLOAD",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "PUSH [tag]",
"source": 1,
"value": "18"
},
{
"begin": 618,
"end": 956,
"name": "SWAP2",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "SWAP1",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "PUSH [tag]",
"source": 1,
"value": "19"
},
{
"begin": 618,
"end": 956,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "tag",
"source": 1,
"value": "18"
},
{
"begin": 618,
"end": 956,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 618,
"end": 956,
"name": "MLOAD",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "DUP1",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "SWAP2",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "SUB",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "SWAP1",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "RETURN",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "tag",
"source": 1,
"value": "5"
},
{
"begin": 962,
"end": 1154,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "DUP1",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "ISZERO",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH [tag]",
"source": 1,
"value": "20"
},
{
"begin": 962,
"end": 1154,
"name": "JUMPI",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 962,
"end": 1154,
"name": "DUP1",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "REVERT",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "tag",
"source": 1,
"value": "20"
},
{
"begin": 962,
"end": 1154,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "POP",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH [tag]",
"source": 1,
"value": "21"
},
{
"begin": 962,
"end": 1154,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 962,
"end": 1154,
"name": "DUP1",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "CALLDATASIZE",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "SUB",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "DUP2",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "ADD",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "SWAP1",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH [tag]",
"source": 1,
"value": "22"
},
{
"begin": 962,
"end": 1154,
"name": "SWAP2",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "SWAP1",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH [tag]",
"source": 1,
"value": "23"
},
{
"begin": 962,
"end": 1154,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "tag",
"source": 1,
"value": "22"
},
{
"begin": 962,
"end": 1154,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH [tag]",
"source": 1,
"value": "24"
},
{
"begin": 962,
"end": 1154,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "tag",
"source": 1,
"value": "21"
},
{
"begin": 962,
"end": 1154,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 962,
"end": 1154,
"name": "MLOAD",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH [tag]",
"source": 1,
"value": "25"
},
{
"begin": 962,
"end": 1154,
"name": "SWAP2",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "SWAP1",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH [tag]",
"source": 1,
"value": "12"
},
{
"begin": 962,
"end": 1154,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "tag",
"source": 1,
"value": "25"
},
{
"begin": 962,
"end": 1154,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 962,
"end": 1154,
"name": "MLOAD",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "DUP1",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "SWAP2",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "SUB",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "SWAP1",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "RETURN",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "tag",
"source": 1,
"value": "10"
},
{
"begin": 192,
"end": 240,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 192,
"end": 240,
"name": "MSTORE",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "DUP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 192,
"end": 240,
"name": "MSTORE",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 192,
"end": 240,
"name": "KECCAK256",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 192,
"end": 240,
"name": "SWAP2",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "POP",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "SWAP1",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "POP",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "SLOAD",
"source": 1
},
{
"begin": 192,
"end": 240,
"name": "DUP2",
"source": 1
},
{
"begin": 192,
"end": 240,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 445,
"end": 563,
"name": "tag",
"source": 1,
"value": "14"
},
{
"begin": 445,
"end": 563,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 526,
"end": 539,
"name": "PUSH",
"source": 1,
"value": "2"
},
{
"begin": 526,
"end": 539,
"name": "SLOAD",
"source": 1
},
{
"begin": 496,
"end": 522,
"name": "PUSH [tag]",
"source": 1,
"value": "27"
},
{
"begin": 512,
"end": 521,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 496,
"end": 511,
"name": "PUSH [tag]",
"source": 1,
"value": "24"
},
{
"begin": 496,
"end": 522,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 496,
"end": 522,
"name": "tag",
"source": 1,
"value": "27"
},
{
"begin": 496,
"end": 522,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 496,
"end": 539,
"name": "LT",
"source": 1
},
{
"begin": 496,
"end": 539,
"name": "ISZERO",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "PUSH [tag]",
"source": 1,
"value": "28"
},
{
"begin": 488,
"end": 556,
"name": "JUMPI",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 488,
"end": 556,
"name": "MLOAD",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "PUSH",
"source": 1,
"value": "8C379A000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 488,
"end": 556,
"name": "DUP2",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "MSTORE",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 488,
"end": 556,
"name": "ADD",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "PUSH [tag]",
"source": 1,
"value": "29"
},
{
"begin": 488,
"end": 556,
"name": "SWAP1",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "PUSH [tag]",
"source": 1,
"value": "30"
},
{
"begin": 488,
"end": 556,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "tag",
"source": 1,
"value": "29"
},
{
"begin": 488,
"end": 556,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 488,
"end": 556,
"name": "MLOAD",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "DUP1",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "SWAP2",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "SUB",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "SWAP1",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "REVERT",
"source": 1
},
{
"begin": 488,
"end": 556,
"name": "tag",
"source": 1,
"value": "28"
},
{
"begin": 488,
"end": 556,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 445,
"end": 563,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "tag",
"source": 1,
"value": "17"
},
{
"begin": 618,
"end": 956,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 683,
"end": 686,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 773,
"end": 783,
"name": "DUP1",
"source": 1
},
{
"begin": 900,
"end": 908,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 900,
"end": 908,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 900,
"end": 908,
"name": "SWAP1",
"source": 1
},
{
"begin": 900,
"end": 908,
"name": "SLOAD",
"source": 1
},
{
"begin": 900,
"end": 908,
"name": "SWAP1",
"source": 1
},
{
"begin": 900,
"end": 908,
"name": "PUSH",
"source": 1,
"value": "100"
},
{
"begin": 900,
"end": 908,
"name": "EXP",
"source": 1
},
{
"begin": 900,
"end": 908,
"name": "SWAP1",
"source": 1
},
{
"begin": 900,
"end": 908,
"name": "DIV",
"source": 1
},
{
"begin": 900,
"end": 908,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 900,
"end": 908,
"name": "AND",
"source": 1
},
{
"begin": 900,
"end": 924,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 900,
"end": 924,
"name": "AND",
"source": 1
},
{
"begin": 900,
"end": 924,
"name": "PUSH",
"source": 1,
"value": "FEAF968C"
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 900,
"end": 926,
"name": "MLOAD",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP2",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFF"
},
{
"begin": 900,
"end": 926,
"name": "AND",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "E0"
},
{
"begin": 900,
"end": 926,
"name": "SHL",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP2",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "MSTORE",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 900,
"end": 926,
"name": "ADD",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "A0"
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 900,
"end": 926,
"name": "MLOAD",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP1",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP4",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "SUB",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP2",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP7",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "GAS",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "STATICCALL",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "ISZERO",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP1",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "ISZERO",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH [tag]",
"source": 1,
"value": "33"
},
{
"begin": 900,
"end": 926,
"name": "JUMPI",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 900,
"end": 926,
"name": "DUP1",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "RETURNDATACOPY",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 900,
"end": 926,
"name": "REVERT",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "tag",
"source": 1,
"value": "33"
},
{
"begin": 900,
"end": 926,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 900,
"end": 926,
"name": "MLOAD",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 900,
"end": 926,
"name": "NOT",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 900,
"end": 926,
"name": "DUP3",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "ADD",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "AND",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP3",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "ADD",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP1",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 900,
"end": 926,
"name": "MSTORE",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "DUP2",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "ADD",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "SWAP1",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH [tag]",
"source": 1,
"value": "34"
},
{
"begin": 900,
"end": 926,
"name": "SWAP2",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "SWAP1",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "PUSH [tag]",
"source": 1,
"value": "35"
},
{
"begin": 900,
"end": 926,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 900,
"end": 926,
"name": "tag",
"source": 1,
"value": "34"
},
{
"begin": 900,
"end": 926,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 725,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 725,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 725,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 725,
"end": 926,
"name": "SWAP2",
"source": 1
},
{
"begin": 725,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 725,
"end": 926,
"name": "POP",
"source": 1
},
{
"begin": 943,
"end": 949,
"name": "DUP1",
"source": 1
},
{
"begin": 936,
"end": 949,
"name": "SWAP2",
"source": 1
},
{
"begin": 936,
"end": 949,
"name": "POP",
"source": 1
},
{
"begin": 936,
"end": 949,
"name": "POP",
"source": 1
},
{
"begin": 618,
"end": 956,
"name": "SWAP1",
"source": 1
},
{
"begin": 618,
"end": 956,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "tag",
"source": 1,
"value": "24"
},
{
"begin": 962,
"end": 1154,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1026,
"end": 1033,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1044,
"end": 1057,
"name": "DUP1",
"source": 1
},
{
"begin": 1068,
"end": 1102,
"name": "PUSH [tag]",
"source": 1,
"value": "37"
},
{
"begin": 1068,
"end": 1100,
"name": "PUSH [tag]",
"source": 1,
"value": "17"
},
{
"begin": 1068,
"end": 1102,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1068,
"end": 1102,
"name": "tag",
"source": 1,
"value": "37"
},
{
"begin": 1068,
"end": 1102,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1044,
"end": 1103,
"name": "SWAP1",
"source": 1
},
{
"begin": 1044,
"end": 1103,
"name": "POP",
"source": 1
},
{
"begin": 1140,
"end": 1146,
"name": "PUSH",
"source": 1,
"value": "5F5E100"
},
{
"begin": 1132,
"end": 1137,
"name": "DUP2",
"source": 1
},
{
"begin": 1120,
"end": 1129,
"name": "DUP5",
"source": 1
},
{
"begin": 1120,
"end": 1137,
"name": "PUSH [tag]",
"source": 1,
"value": "38"
},
{
"begin": 1120,
"end": 1137,
"name": "SWAP2",
"source": 1
},
{
"begin": 1120,
"end": 1137,
"name": "SWAP1",
"source": 1
},
{
"begin": 1120,
"end": 1137,
"name": "PUSH [tag]",
"source": 1,
"value": "39"
},
{
"begin": 1120,
"end": 1137,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1120,
"end": 1137,
"name": "tag",
"source": 1,
"value": "38"
},
{
"begin": 1120,
"end": 1137,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1120,
"end": 1147,
"name": "PUSH [tag]",
"source": 1,
"value": "40"
},
{
"begin": 1120,
"end": 1147,
"name": "SWAP2",
"source": 1
},
{
"begin": 1120,
"end": 1147,
"name": "SWAP1",
"source": 1
},
{
"begin": 1120,
"end": 1147,
"name": "PUSH [tag]",
"source": 1,
"value": "41"
},
{
"begin": 1120,
"end": 1147,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1120,
"end": 1147,
"name": "tag",
"source": 1,
"value": "40"
},
{
"begin": 1120,
"end": 1147,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1113,
"end": 1147,
"name": "SWAP2",
"source": 1
},
{
"begin": 1113,
"end": 1147,
"name": "POP",
"source": 1
},
{
"begin": 1113,
"end": 1147,
"name": "POP",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "SWAP2",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "SWAP1",
"source": 1
},
{
"begin": 962,
"end": 1154,
"name": "POP",
"source": 1
},
{
"begin": 962,
"end": 1154,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 88,
"end": 205,
"name": "tag",
"source": 2,
"value": "43"
},
{
"begin": 88,
"end": 205,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 197,
"end": 198,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 194,
"end": 195,
"name": "DUP1",
"source": 2
},
{
"begin": 187,
"end": 199,
"name": "REVERT",
"source": 2
},
{
"begin": 334,
"end": 460,
"name": "tag",
"source": 2,
"value": "45"
},
{
"begin": 334,
"end": 460,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 371,
"end": 378,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 411,
"end": 453,
"name": "PUSH",
"source": 2,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 404,
"end": 409,
"name": "DUP3",
"source": 2
},
{
"begin": 400,
"end": 454,
"name": "AND",
"source": 2
},
{
"begin": 389,
"end": 454,
"name": "SWAP1",
"source": 2
},
{
"begin": 389,
"end": 454,
"name": "POP",
"source": 2
},
{
"begin": 334,
"end": 460,
"name": "SWAP2",
"source": 2
},
{
"begin": 334,
"end": 460,
"name": "SWAP1",
"source": 2
},
{
"begin": 334,
"end": 460,
"name": "POP",
"source": 2
},
{
"begin": 334,
"end": 460,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 466,
"end": 562,
"name": "tag",
"source": 2,
"value": "46"
},
{
"begin": 466,
"end": 562,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 503,
"end": 510,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 532,
"end": 556,
"name": "PUSH [tag]",
"source": 2,
"value": "72"
},
{
"begin": 550,
"end": 555,
"name": "DUP3",
"source": 2
},
{
"begin": 532,
"end": 556,
"name": "PUSH [tag]",
"source": 2,
"value": "45"
},
{
"begin": 532,
"end": 556,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 532,
"end": 556,
"name": "tag",
"source": 2,
"value": "72"
},
{
"begin": 532,
"end": 556,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 521,
"end": 556,
"name": "SWAP1",
"source": 2
},
{
"begin": 521,
"end": 556,
"name": "POP",
"source": 2
},
{
"begin": 466,
"end": 562,
"name": "SWAP2",
"source": 2
},
{
"begin": 466,
"end": 562,
"name": "SWAP1",
"source": 2
},
{
"begin": 466,
"end": 562,
"name": "POP",
"source": 2
},
{
"begin": 466,
"end": 562,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 568,
"end": 690,
"name": "tag",
"source": 2,
"value": "47"
},
{
"begin": 568,
"end": 690,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 641,
"end": 665,
"name": "PUSH [tag]",
"source": 2,
"value": "74"
},
{
"begin": 659,
"end": 664,
"name": "DUP2",
"source": 2
},
{
"begin": 641,
"end": 665,
"name": "PUSH [tag]",
"source": 2,
"value": "46"
},
{
"begin": 641,
"end": 665,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 641,
"end": 665,
"name": "tag",
"source": 2,
"value": "74"
},
{
"begin": 641,
"end": 665,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 634,
"end": 639,
"name": "DUP2",
"source": 2
},
{
"begin": 631,
"end": 666,
"name": "EQ",
"source": 2
},
{
"begin": 621,
"end": 684,
"name": "PUSH [tag]",
"source": 2,
"value": "75"
},
{
"begin": 621,
"end": 684,
"name": "JUMPI",
"source": 2
},
{
"begin": 680,
"end": 681,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 677,
"end": 678,
"name": "DUP1",
"source": 2
},
{
"begin": 670,
"end": 682,
"name": "REVERT",
"source": 2
},
{
"begin": 621,
"end": 684,
"name": "tag",
"source": 2,
"value": "75"
},
{
"begin": 621,
"end": 684,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 568,
"end": 690,
"name": "POP",
"source": 2
},
{
"begin": 568,
"end": 690,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 696,
"end": 835,
"name": "tag",
"source": 2,
"value": "48"
},
{
"begin": 696,
"end": 835,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 742,
"end": 747,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 780,
"end": 786,
"name": "DUP2",
"source": 2
},
{
"begin": 767,
"end": 787,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 758,
"end": 787,
"name": "SWAP1",
"source": 2
},
{
"begin": 758,
"end": 787,
"name": "POP",
"source": 2
},
{
"begin": 796,
"end": 829,
"name": "PUSH [tag]",
"source": 2,
"value": "77"
},
{
"begin": 823,
"end": 828,
"name": "DUP2",
"source": 2
},
{
"begin": 796,
"end": 829,
"name": "PUSH [tag]",
"source": 2,
"value": "47"
},
{
"begin": 796,
"end": 829,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 796,
"end": 829,
"name": "tag",
"source": 2,
"value": "77"
},
{
"begin": 796,
"end": 829,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 696,
"end": 835,
"name": "SWAP3",
"source": 2
},
{
"begin": 696,
"end": 835,
"name": "SWAP2",
"source": 2
},
{
"begin": 696,
"end": 835,
"name": "POP",
"source": 2
},
{
"begin": 696,
"end": 835,
"name": "POP",
"source": 2
},
{
"begin": 696,
"end": 835,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 841,
"end": 1170,
"name": "tag",
"source": 2,
"value": "9"
},
{
"begin": 841,
"end": 1170,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 900,
"end": 906,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 949,
"end": 951,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 937,
"end": 946,
"name": "DUP3",
"source": 2
},
{
"begin": 928,
"end": 935,
"name": "DUP5",
"source": 2
},
{
"begin": 924,
"end": 947,
"name": "SUB",
"source": 2
},
{
"begin": 920,
"end": 952,
"name": "SLT",
"source": 2
},
{
"begin": 917,
"end": 1036,
"name": "ISZERO",
"source": 2
},
{
"begin": 917,
"end": 1036,
"name": "PUSH [tag]",
"source": 2,
"value": "79"
},
{
"begin": 917,
"end": 1036,
"name": "JUMPI",
"source": 2
},
{
"begin": 955,
"end": 1034,
"name": "PUSH [tag]",
"source": 2,
"value": "80"
},
{
"begin": 955,
"end": 1034,
"name": "PUSH [tag]",
"source": 2,
"value": "43"
},
{
"begin": 955,
"end": 1034,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 955,
"end": 1034,
"name": "tag",
"source": 2,
"value": "80"
},
{
"begin": 955,
"end": 1034,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 917,
"end": 1036,
"name": "tag",
"source": 2,
"value": "79"
},
{
"begin": 917,
"end": 1036,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1075,
"end": 1076,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1100,
"end": 1153,
"name": "PUSH [tag]",
"source": 2,
"value": "81"
},
{
"begin": 1145,
"end": 1152,
"name": "DUP5",
"source": 2
},
{
"begin": 1136,
"end": 1142,
"name": "DUP3",
"source": 2
},
{
"begin": 1125,
"end": 1134,
"name": "DUP6",
"source": 2
},
{
"begin": 1121,
"end": 1143,
"name": "ADD",
"source": 2
},
{
"begin": 1100,
"end": 1153,
"name": "PUSH [tag]",
"source": 2,
"value": "48"
},
{
"begin": 1100,
"end": 1153,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 1100,
"end": 1153,
"name": "tag",
"source": 2,
"value": "81"
},
{
"begin": 1100,
"end": 1153,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1090,
"end": 1153,
"name": "SWAP2",
"source": 2
},
{
"begin": 1090,
"end": 1153,
"name": "POP",
"source": 2
},
{
"begin": 1046,
"end": 1163,
"name": "POP",
"source": 2
},
{
"begin": 841,
"end": 1170,
"name": "SWAP3",
"source": 2
},
{
"begin": 841,
"end": 1170,
"name": "SWAP2",
"source": 2
},
{
"begin": 841,
"end": 1170,
"name": "POP",
"source": 2
},
{
"begin": 841,
"end": 1170,
"name": "POP",
"source": 2
},
{
"begin": 841,
"end": 1170,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1176,
"end": 1253,
"name": "tag",
"source": 2,
"value": "49"
},
{
"begin": 1176,
"end": 1253,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1213,
"end": 1220,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1242,
"end": 1247,
"name": "DUP2",
"source": 2
},
{
"begin": 1231,
"end": 1247,
"name": "SWAP1",
"source": 2
},
{
"begin": 1231,
"end": 1247,
"name": "POP",
"source": 2
},
{
"begin": 1176,
"end": 1253,
"name": "SWAP2",
"source": 2
},
{
"begin": 1176,
"end": 1253,
"name": "SWAP1",
"source": 2
},
{
"begin": 1176,
"end": 1253,
"name": "POP",
"source": 2
},
{
"begin": 1176,
"end": 1253,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1259,
"end": 1377,
"name": "tag",
"source": 2,
"value": "50"
},
{
"begin": 1259,
"end": 1377,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1346,
"end": 1370,
"name": "PUSH [tag]",
"source": 2,
"value": "84"
},
{
"begin": 1364,
"end": 1369,
"name": "DUP2",
"source": 2
},
{
"begin": 1346,
"end": 1370,
"name": "PUSH [tag]",
"source": 2,
"value": "49"
},
{
"begin": 1346,
"end": 1370,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 1346,
"end": 1370,
"name": "tag",
"source": 2,
"value": "84"
},
{
"begin": 1346,
"end": 1370,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1341,
"end": 1344,
"name": "DUP3",
"source": 2
},
{
"begin": 1334,
"end": 1371,
"name": "MSTORE",
"source": 2
},
{
"begin": 1259,
"end": 1377,
"name": "POP",
"source": 2
},
{
"begin": 1259,
"end": 1377,
"name": "POP",
"source": 2
},
{
"begin": 1259,
"end": 1377,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1383,
"end": 1605,
"name": "tag",
"source": 2,
"value": "12"
},
{
"begin": 1383,
"end": 1605,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1476,
"end": 1480,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1514,
"end": 1516,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1503,
"end": 1512,
"name": "DUP3",
"source": 2
},
{
"begin": 1499,
"end": 1517,
"name": "ADD",
"source": 2
},
{
"begin": 1491,
"end": 1517,
"name": "SWAP1",
"source": 2
},
{
"begin": 1491,
"end": 1517,
"name": "POP",
"source": 2
},
{
"begin": 1527,
"end": 1598,
"name": "PUSH [tag]",
"source": 2,
"value": "86"
},
{
"begin": 1595,
"end": 1596,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1584,
"end": 1593,
"name": "DUP4",
"source": 2
},
{
"begin": 1580,
"end": 1597,
"name": "ADD",
"source": 2
},
{
"begin": 1571,
"end": 1577,
"name": "DUP5",
"source": 2
},
{
"begin": 1527,
"end": 1598,
"name": "PUSH [tag]",
"source": 2,
"value": "50"
},
{
"begin": 1527,
"end": 1598,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 1527,
"end": 1598,
"name": "tag",
"source": 2,
"value": "86"
},
{
"begin": 1527,
"end": 1598,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1383,
"end": 1605,
"name": "SWAP3",
"source": 2
},
{
"begin": 1383,
"end": 1605,
"name": "SWAP2",
"source": 2
},
{
"begin": 1383,
"end": 1605,
"name": "POP",
"source": 2
},
{
"begin": 1383,
"end": 1605,
"name": "POP",
"source": 2
},
{
"begin": 1383,
"end": 1605,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1611,
"end": 1687,
"name": "tag",
"source": 2,
"value": "51"
},
{
"begin": 1611,
"end": 1687,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1647,
"end": 1654,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1676,
"end": 1681,
"name": "DUP2",
"source": 2
},
{
"begin": 1665,
"end": 1681,
"name": "SWAP1",
"source": 2
},
{
"begin": 1665,
"end": 1681,
"name": "POP",
"source": 2
},
{
"begin": 1611,
"end": 1687,
"name": "SWAP2",
"source": 2
},
{
"begin": 1611,
"end": 1687,
"name": "SWAP1",
"source": 2
},
{
"begin": 1611,
"end": 1687,
"name": "POP",
"source": 2
},
{
"begin": 1611,
"end": 1687,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1693,
"end": 1808,
"name": "tag",
"source": 2,
"value": "52"
},
{
"begin": 1693,
"end": 1808,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1778,
"end": 1801,
"name": "PUSH [tag]",
"source": 2,
"value": "89"
},
{
"begin": 1795,
"end": 1800,
"name": "DUP2",
"source": 2
},
{
"begin": 1778,
"end": 1801,
"name": "PUSH [tag]",
"source": 2,
"value": "51"
},
{
"begin": 1778,
"end": 1801,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 1778,
"end": 1801,
"name": "tag",
"source": 2,
"value": "89"
},
{
"begin": 1778,
"end": 1801,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1773,
"end": 1776,
"name": "DUP3",
"source": 2
},
{
"begin": 1766,
"end": 1802,
"name": "MSTORE",
"source": 2
},
{
"begin": 1693,
"end": 1808,
"name": "POP",
"source": 2
},
{
"begin": 1693,
"end": 1808,
"name": "POP",
"source": 2
},
{
"begin": 1693,
"end": 1808,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 1814,
"end": 2032,
"name": "tag",
"source": 2,
"value": "19"
},
{
"begin": 1814,
"end": 2032,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1905,
"end": 1909,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 1943,
"end": 1945,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 1932,
"end": 1941,
"name": "DUP3",
"source": 2
},
{
"begin": 1928,
"end": 1946,
"name": "ADD",
"source": 2
},
{
"begin": 1920,
"end": 1946,
"name": "SWAP1",
"source": 2
},
{
"begin": 1920,
"end": 1946,
"name": "POP",
"source": 2
},
{
"begin": 1956,
"end": 2025,
"name": "PUSH [tag]",
"source": 2,
"value": "91"
},
{
"begin": 2022,
"end": 2023,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2011,
"end": 2020,
"name": "DUP4",
"source": 2
},
{
"begin": 2007,
"end": 2024,
"name": "ADD",
"source": 2
},
{
"begin": 1998,
"end": 2004,
"name": "DUP5",
"source": 2
},
{
"begin": 1956,
"end": 2025,
"name": "PUSH [tag]",
"source": 2,
"value": "52"
},
{
"begin": 1956,
"end": 2025,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 1956,
"end": 2025,
"name": "tag",
"source": 2,
"value": "91"
},
{
"begin": 1956,
"end": 2025,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 1814,
"end": 2032,
"name": "SWAP3",
"source": 2
},
{
"begin": 1814,
"end": 2032,
"name": "SWAP2",
"source": 2
},
{
"begin": 1814,
"end": 2032,
"name": "POP",
"source": 2
},
{
"begin": 1814,
"end": 2032,
"name": "POP",
"source": 2
},
{
"begin": 1814,
"end": 2032,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2038,
"end": 2160,
"name": "tag",
"source": 2,
"value": "53"
},
{
"begin": 2038,
"end": 2160,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2111,
"end": 2135,
"name": "PUSH [tag]",
"source": 2,
"value": "93"
},
{
"begin": 2129,
"end": 2134,
"name": "DUP2",
"source": 2
},
{
"begin": 2111,
"end": 2135,
"name": "PUSH [tag]",
"source": 2,
"value": "49"
},
{
"begin": 2111,
"end": 2135,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 2111,
"end": 2135,
"name": "tag",
"source": 2,
"value": "93"
},
{
"begin": 2111,
"end": 2135,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2104,
"end": 2109,
"name": "DUP2",
"source": 2
},
{
"begin": 2101,
"end": 2136,
"name": "EQ",
"source": 2
},
{
"begin": 2091,
"end": 2154,
"name": "PUSH [tag]",
"source": 2,
"value": "94"
},
{
"begin": 2091,
"end": 2154,
"name": "JUMPI",
"source": 2
},
{
"begin": 2150,
"end": 2151,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2147,
"end": 2148,
"name": "DUP1",
"source": 2
},
{
"begin": 2140,
"end": 2152,
"name": "REVERT",
"source": 2
},
{
"begin": 2091,
"end": 2154,
"name": "tag",
"source": 2,
"value": "94"
},
{
"begin": 2091,
"end": 2154,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2038,
"end": 2160,
"name": "POP",
"source": 2
},
{
"begin": 2038,
"end": 2160,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2166,
"end": 2305,
"name": "tag",
"source": 2,
"value": "54"
},
{
"begin": 2166,
"end": 2305,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2212,
"end": 2217,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2250,
"end": 2256,
"name": "DUP2",
"source": 2
},
{
"begin": 2237,
"end": 2257,
"name": "CALLDATALOAD",
"source": 2
},
{
"begin": 2228,
"end": 2257,
"name": "SWAP1",
"source": 2
},
{
"begin": 2228,
"end": 2257,
"name": "POP",
"source": 2
},
{
"begin": 2266,
"end": 2299,
"name": "PUSH [tag]",
"source": 2,
"value": "96"
},
{
"begin": 2293,
"end": 2298,
"name": "DUP2",
"source": 2
},
{
"begin": 2266,
"end": 2299,
"name": "PUSH [tag]",
"source": 2,
"value": "53"
},
{
"begin": 2266,
"end": 2299,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 2266,
"end": 2299,
"name": "tag",
"source": 2,
"value": "96"
},
{
"begin": 2266,
"end": 2299,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2166,
"end": 2305,
"name": "SWAP3",
"source": 2
},
{
"begin": 2166,
"end": 2305,
"name": "SWAP2",
"source": 2
},
{
"begin": 2166,
"end": 2305,
"name": "POP",
"source": 2
},
{
"begin": 2166,
"end": 2305,
"name": "POP",
"source": 2
},
{
"begin": 2166,
"end": 2305,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2311,
"end": 2640,
"name": "tag",
"source": 2,
"value": "23"
},
{
"begin": 2311,
"end": 2640,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2370,
"end": 2376,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2419,
"end": 2421,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2407,
"end": 2416,
"name": "DUP3",
"source": 2
},
{
"begin": 2398,
"end": 2405,
"name": "DUP5",
"source": 2
},
{
"begin": 2394,
"end": 2417,
"name": "SUB",
"source": 2
},
{
"begin": 2390,
"end": 2422,
"name": "SLT",
"source": 2
},
{
"begin": 2387,
"end": 2506,
"name": "ISZERO",
"source": 2
},
{
"begin": 2387,
"end": 2506,
"name": "PUSH [tag]",
"source": 2,
"value": "98"
},
{
"begin": 2387,
"end": 2506,
"name": "JUMPI",
"source": 2
},
{
"begin": 2425,
"end": 2504,
"name": "PUSH [tag]",
"source": 2,
"value": "99"
},
{
"begin": 2425,
"end": 2504,
"name": "PUSH [tag]",
"source": 2,
"value": "43"
},
{
"begin": 2425,
"end": 2504,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 2425,
"end": 2504,
"name": "tag",
"source": 2,
"value": "99"
},
{
"begin": 2425,
"end": 2504,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2387,
"end": 2506,
"name": "tag",
"source": 2,
"value": "98"
},
{
"begin": 2387,
"end": 2506,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2545,
"end": 2546,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2570,
"end": 2623,
"name": "PUSH [tag]",
"source": 2,
"value": "100"
},
{
"begin": 2615,
"end": 2622,
"name": "DUP5",
"source": 2
},
{
"begin": 2606,
"end": 2612,
"name": "DUP3",
"source": 2
},
{
"begin": 2595,
"end": 2604,
"name": "DUP6",
"source": 2
},
{
"begin": 2591,
"end": 2613,
"name": "ADD",
"source": 2
},
{
"begin": 2570,
"end": 2623,
"name": "PUSH [tag]",
"source": 2,
"value": "54"
},
{
"begin": 2570,
"end": 2623,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 2570,
"end": 2623,
"name": "tag",
"source": 2,
"value": "100"
},
{
"begin": 2570,
"end": 2623,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2560,
"end": 2623,
"name": "SWAP2",
"source": 2
},
{
"begin": 2560,
"end": 2623,
"name": "POP",
"source": 2
},
{
"begin": 2516,
"end": 2633,
"name": "POP",
"source": 2
},
{
"begin": 2311,
"end": 2640,
"name": "SWAP3",
"source": 2
},
{
"begin": 2311,
"end": 2640,
"name": "SWAP2",
"source": 2
},
{
"begin": 2311,
"end": 2640,
"name": "POP",
"source": 2
},
{
"begin": 2311,
"end": 2640,
"name": "POP",
"source": 2
},
{
"begin": 2311,
"end": 2640,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2646,
"end": 2815,
"name": "tag",
"source": 2,
"value": "55"
},
{
"begin": 2646,
"end": 2815,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2730,
"end": 2741,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2764,
"end": 2770,
"name": "DUP3",
"source": 2
},
{
"begin": 2759,
"end": 2762,
"name": "DUP3",
"source": 2
},
{
"begin": 2752,
"end": 2771,
"name": "MSTORE",
"source": 2
},
{
"begin": 2804,
"end": 2808,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 2799,
"end": 2802,
"name": "DUP3",
"source": 2
},
{
"begin": 2795,
"end": 2809,
"name": "ADD",
"source": 2
},
{
"begin": 2780,
"end": 2809,
"name": "SWAP1",
"source": 2
},
{
"begin": 2780,
"end": 2809,
"name": "POP",
"source": 2
},
{
"begin": 2646,
"end": 2815,
"name": "SWAP3",
"source": 2
},
{
"begin": 2646,
"end": 2815,
"name": "SWAP2",
"source": 2
},
{
"begin": 2646,
"end": 2815,
"name": "POP",
"source": 2
},
{
"begin": 2646,
"end": 2815,
"name": "POP",
"source": 2
},
{
"begin": 2646,
"end": 2815,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2821,
"end": 2984,
"name": "tag",
"source": 2,
"value": "56"
},
{
"begin": 2821,
"end": 2984,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 2961,
"end": 2976,
"name": "PUSH",
"source": 2,
"value": "53656E64206D6F72652045544800000000000000000000000000000000000000"
},
{
"begin": 2957,
"end": 2958,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 2949,
"end": 2955,
"name": "DUP3",
"source": 2
},
{
"begin": 2945,
"end": 2959,
"name": "ADD",
"source": 2
},
{
"begin": 2938,
"end": 2977,
"name": "MSTORE",
"source": 2
},
{
"begin": 2821,
"end": 2984,
"name": "POP",
"source": 2
},
{
"begin": 2821,
"end": 2984,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 2990,
"end": 3356,
"name": "tag",
"source": 2,
"value": "57"
},
{
"begin": 2990,
"end": 3356,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3132,
"end": 3135,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 3153,
"end": 3220,
"name": "PUSH [tag]",
"source": 2,
"value": "104"
},
{
"begin": 3217,
"end": 3219,
"name": "PUSH",
"source": 2,
"value": "D"
},
{
"begin": 3212,
"end": 3215,
"name": "DUP4",
"source": 2
},
{
"begin": 3153,
"end": 3220,
"name": "PUSH [tag]",
"source": 2,
"value": "55"
},
{
"begin": 3153,
"end": 3220,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 3153,
"end": 3220,
"name": "tag",
"source": 2,
"value": "104"
},
{
"begin": 3153,
"end": 3220,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3146,
"end": 3220,
"name": "SWAP2",
"source": 2
},
{
"begin": 3146,
"end": 3220,
"name": "POP",
"source": 2
},
{
"begin": 3229,
"end": 3322,
"name": "PUSH [tag]",
"source": 2,
"value": "105"
},
{
"begin": 3318,
"end": 3321,
"name": "DUP3",
"source": 2
},
{
"begin": 3229,
"end": 3322,
"name": "PUSH [tag]",
"source": 2,
"value": "56"
},
{
"begin": 3229,
"end": 3322,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 3229,
"end": 3322,
"name": "tag",
"source": 2,
"value": "105"
},
{
"begin": 3229,
"end": 3322,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3347,
"end": 3349,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 3342,
"end": 3345,
"name": "DUP3",
"source": 2
},
{
"begin": 3338,
"end": 3350,
"name": "ADD",
"source": 2
},
{
"begin": 3331,
"end": 3350,
"name": "SWAP1",
"source": 2
},
{
"begin": 3331,
"end": 3350,
"name": "POP",
"source": 2
},
{
"begin": 2990,
"end": 3356,
"name": "SWAP2",
"source": 2
},
{
"begin": 2990,
"end": 3356,
"name": "SWAP1",
"source": 2
},
{
"begin": 2990,
"end": 3356,
"name": "POP",
"source": 2
},
{
"begin": 2990,
"end": 3356,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 3362,
"end": 3781,
"name": "tag",
"source": 2,
"value": "30"
},
{
"begin": 3362,
"end": 3781,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3528,
"end": 3532,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 3566,
"end": 3568,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 3555,
"end": 3564,
"name": "DUP3",
"source": 2
},
{
"begin": 3551,
"end": 3569,
"name": "ADD",
"source": 2
},
{
"begin": 3543,
"end": 3569,
"name": "SWAP1",
"source": 2
},
{
"begin": 3543,
"end": 3569,
"name": "POP",
"source": 2
},
{
"begin": 3615,
"end": 3624,
"name": "DUP2",
"source": 2
},
{
"begin": 3609,
"end": 3613,
"name": "DUP2",
"source": 2
},
{
"begin": 3605,
"end": 3625,
"name": "SUB",
"source": 2
},
{
"begin": 3601,
"end": 3602,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 3590,
"end": 3599,
"name": "DUP4",
"source": 2
},
{
"begin": 3586,
"end": 3603,
"name": "ADD",
"source": 2
},
{
"begin": 3579,
"end": 3626,
"name": "MSTORE",
"source": 2
},
{
"begin": 3643,
"end": 3774,
"name": "PUSH [tag]",
"source": 2,
"value": "107"
},
{
"begin": 3769,
"end": 3773,
"name": "DUP2",
"source": 2
},
{
"begin": 3643,
"end": 3774,
"name": "PUSH [tag]",
"source": 2,
"value": "57"
},
{
"begin": 3643,
"end": 3774,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 3643,
"end": 3774,
"name": "tag",
"source": 2,
"value": "107"
},
{
"begin": 3643,
"end": 3774,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3635,
"end": 3774,
"name": "SWAP1",
"source": 2
},
{
"begin": 3635,
"end": 3774,
"name": "POP",
"source": 2
},
{
"begin": 3362,
"end": 3781,
"name": "SWAP2",
"source": 2
},
{
"begin": 3362,
"end": 3781,
"name": "SWAP1",
"source": 2
},
{
"begin": 3362,
"end": 3781,
"name": "POP",
"source": 2
},
{
"begin": 3362,
"end": 3781,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 3787,
"end": 3892,
"name": "tag",
"source": 2,
"value": "58"
},
{
"begin": 3787,
"end": 3892,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3823,
"end": 3830,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 3863,
"end": 3885,
"name": "PUSH",
"source": 2,
"value": "FFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 3856,
"end": 3861,
"name": "DUP3",
"source": 2
},
{
"begin": 3852,
"end": 3886,
"name": "AND",
"source": 2
},
{
"begin": 3841,
"end": 3886,
"name": "SWAP1",
"source": 2
},
{
"begin": 3841,
"end": 3886,
"name": "POP",
"source": 2
},
{
"begin": 3787,
"end": 3892,
"name": "SWAP2",
"source": 2
},
{
"begin": 3787,
"end": 3892,
"name": "SWAP1",
"source": 2
},
{
"begin": 3787,
"end": 3892,
"name": "POP",
"source": 2
},
{
"begin": 3787,
"end": 3892,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 3898,
"end": 4018,
"name": "tag",
"source": 2,
"value": "59"
},
{
"begin": 3898,
"end": 4018,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3970,
"end": 3993,
"name": "PUSH [tag]",
"source": 2,
"value": "110"
},
{
"begin": 3987,
"end": 3992,
"name": "DUP2",
"source": 2
},
{
"begin": 3970,
"end": 3993,
"name": "PUSH [tag]",
"source": 2,
"value": "58"
},
{
"begin": 3970,
"end": 3993,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 3970,
"end": 3993,
"name": "tag",
"source": 2,
"value": "110"
},
{
"begin": 3970,
"end": 3993,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3963,
"end": 3968,
"name": "DUP2",
"source": 2
},
{
"begin": 3960,
"end": 3994,
"name": "EQ",
"source": 2
},
{
"begin": 3950,
"end": 4012,
"name": "PUSH [tag]",
"source": 2,
"value": "111"
},
{
"begin": 3950,
"end": 4012,
"name": "JUMPI",
"source": 2
},
{
"begin": 4008,
"end": 4009,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 4005,
"end": 4006,
"name": "DUP1",
"source": 2
},
{
"begin": 3998,
"end": 4010,
"name": "REVERT",
"source": 2
},
{
"begin": 3950,
"end": 4012,
"name": "tag",
"source": 2,
"value": "111"
},
{
"begin": 3950,
"end": 4012,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 3898,
"end": 4018,
"name": "POP",
"source": 2
},
{
"begin": 3898,
"end": 4018,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 4024,
"end": 4165,
"name": "tag",
"source": 2,
"value": "60"
},
{
"begin": 4024,
"end": 4165,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4080,
"end": 4085,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 4111,
"end": 4117,
"name": "DUP2",
"source": 2
},
{
"begin": 4105,
"end": 4118,
"name": "MLOAD",
"source": 2
},
{
"begin": 4096,
"end": 4118,
"name": "SWAP1",
"source": 2
},
{
"begin": 4096,
"end": 4118,
"name": "POP",
"source": 2
},
{
"begin": 4127,
"end": 4159,
"name": "PUSH [tag]",
"source": 2,
"value": "113"
},
{
"begin": 4153,
"end": 4158,
"name": "DUP2",
"source": 2
},
{
"begin": 4127,
"end": 4159,
"name": "PUSH [tag]",
"source": 2,
"value": "59"
},
{
"begin": 4127,
"end": 4159,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 4127,
"end": 4159,
"name": "tag",
"source": 2,
"value": "113"
},
{
"begin": 4127,
"end": 4159,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4024,
"end": 4165,
"name": "SWAP3",
"source": 2
},
{
"begin": 4024,
"end": 4165,
"name": "SWAP2",
"source": 2
},
{
"begin": 4024,
"end": 4165,
"name": "POP",
"source": 2
},
{
"begin": 4024,
"end": 4165,
"name": "POP",
"source": 2
},
{
"begin": 4024,
"end": 4165,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 4171,
"end": 4291,
"name": "tag",
"source": 2,
"value": "61"
},
{
"begin": 4171,
"end": 4291,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4243,
"end": 4266,
"name": "PUSH [tag]",
"source": 2,
"value": "115"
},
{
"begin": 4260,
"end": 4265,
"name": "DUP2",
"source": 2
},
{
"begin": 4243,
"end": 4266,
"name": "PUSH [tag]",
"source": 2,
"value": "51"
},
{
"begin": 4243,
"end": 4266,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 4243,
"end": 4266,
"name": "tag",
"source": 2,
"value": "115"
},
{
"begin": 4243,
"end": 4266,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4236,
"end": 4241,
"name": "DUP2",
"source": 2
},
{
"begin": 4233,
"end": 4267,
"name": "EQ",
"source": 2
},
{
"begin": 4223,
"end": 4285,
"name": "PUSH [tag]",
"source": 2,
"value": "116"
},
{
"begin": 4223,
"end": 4285,
"name": "JUMPI",
"source": 2
},
{
"begin": 4281,
"end": 4282,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 4278,
"end": 4279,
"name": "DUP1",
"source": 2
},
{
"begin": 4271,
"end": 4283,
"name": "REVERT",
"source": 2
},
{
"begin": 4223,
"end": 4285,
"name": "tag",
"source": 2,
"value": "116"
},
{
"begin": 4223,
"end": 4285,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4171,
"end": 4291,
"name": "POP",
"source": 2
},
{
"begin": 4171,
"end": 4291,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 4297,
"end": 4438,
"name": "tag",
"source": 2,
"value": "62"
},
{
"begin": 4297,
"end": 4438,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4353,
"end": 4358,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 4384,
"end": 4390,
"name": "DUP2",
"source": 2
},
{
"begin": 4378,
"end": 4391,
"name": "MLOAD",
"source": 2
},
{
"begin": 4369,
"end": 4391,
"name": "SWAP1",
"source": 2
},
{
"begin": 4369,
"end": 4391,
"name": "POP",
"source": 2
},
{
"begin": 4400,
"end": 4432,
"name": "PUSH [tag]",
"source": 2,
"value": "118"
},
{
"begin": 4426,
"end": 4431,
"name": "DUP2",
"source": 2
},
{
"begin": 4400,
"end": 4432,
"name": "PUSH [tag]",
"source": 2,
"value": "61"
},
{
"begin": 4400,
"end": 4432,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 4400,
"end": 4432,
"name": "tag",
"source": 2,
"value": "118"
},
{
"begin": 4400,
"end": 4432,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4297,
"end": 4438,
"name": "SWAP3",
"source": 2
},
{
"begin": 4297,
"end": 4438,
"name": "SWAP2",
"source": 2
},
{
"begin": 4297,
"end": 4438,
"name": "POP",
"source": 2
},
{
"begin": 4297,
"end": 4438,
"name": "POP",
"source": 2
},
{
"begin": 4297,
"end": 4438,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 4444,
"end": 4587,
"name": "tag",
"source": 2,
"value": "63"
},
{
"begin": 4444,
"end": 4587,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4501,
"end": 4506,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 4532,
"end": 4538,
"name": "DUP2",
"source": 2
},
{
"begin": 4526,
"end": 4539,
"name": "MLOAD",
"source": 2
},
{
"begin": 4517,
"end": 4539,
"name": "SWAP1",
"source": 2
},
{
"begin": 4517,
"end": 4539,
"name": "POP",
"source": 2
},
{
"begin": 4548,
"end": 4581,
"name": "PUSH [tag]",
"source": 2,
"value": "120"
},
{
"begin": 4575,
"end": 4580,
"name": "DUP2",
"source": 2
},
{
"begin": 4548,
"end": 4581,
"name": "PUSH [tag]",
"source": 2,
"value": "53"
},
{
"begin": 4548,
"end": 4581,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 4548,
"end": 4581,
"name": "tag",
"source": 2,
"value": "120"
},
{
"begin": 4548,
"end": 4581,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4444,
"end": 4587,
"name": "SWAP3",
"source": 2
},
{
"begin": 4444,
"end": 4587,
"name": "SWAP2",
"source": 2
},
{
"begin": 4444,
"end": 4587,
"name": "POP",
"source": 2
},
{
"begin": 4444,
"end": 4587,
"name": "POP",
"source": 2
},
{
"begin": 4444,
"end": 4587,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"name": "tag",
"source": 2,
"value": "35"
},
{
"begin": 4593,
"end": 5564,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4696,
"end": 4702,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 4704,
"end": 4710,
"name": "DUP1",
"source": 2
},
{
"begin": 4712,
"end": 4718,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 4720,
"end": 4726,
"name": "DUP1",
"source": 2
},
{
"begin": 4728,
"end": 4734,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 4777,
"end": 4780,
"name": "PUSH",
"source": 2,
"value": "A0"
},
{
"begin": 4765,
"end": 4774,
"name": "DUP7",
"source": 2
},
{
"begin": 4756,
"end": 4763,
"name": "DUP9",
"source": 2
},
{
"begin": 4752,
"end": 4775,
"name": "SUB",
"source": 2
},
{
"begin": 4748,
"end": 4781,
"name": "SLT",
"source": 2
},
{
"begin": 4745,
"end": 4865,
"name": "ISZERO",
"source": 2
},
{
"begin": 4745,
"end": 4865,
"name": "PUSH [tag]",
"source": 2,
"value": "122"
},
{
"begin": 4745,
"end": 4865,
"name": "JUMPI",
"source": 2
},
{
"begin": 4784,
"end": 4863,
"name": "PUSH [tag]",
"source": 2,
"value": "123"
},
{
"begin": 4784,
"end": 4863,
"name": "PUSH [tag]",
"source": 2,
"value": "43"
},
{
"begin": 4784,
"end": 4863,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 4784,
"end": 4863,
"name": "tag",
"source": 2,
"value": "123"
},
{
"begin": 4784,
"end": 4863,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4745,
"end": 4865,
"name": "tag",
"source": 2,
"value": "122"
},
{
"begin": 4745,
"end": 4865,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4904,
"end": 4905,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 4929,
"end": 4992,
"name": "PUSH [tag]",
"source": 2,
"value": "124"
},
{
"begin": 4984,
"end": 4991,
"name": "DUP9",
"source": 2
},
{
"begin": 4975,
"end": 4981,
"name": "DUP3",
"source": 2
},
{
"begin": 4964,
"end": 4973,
"name": "DUP10",
"source": 2
},
{
"begin": 4960,
"end": 4982,
"name": "ADD",
"source": 2
},
{
"begin": 4929,
"end": 4992,
"name": "PUSH [tag]",
"source": 2,
"value": "60"
},
{
"begin": 4929,
"end": 4992,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 4929,
"end": 4992,
"name": "tag",
"source": 2,
"value": "124"
},
{
"begin": 4929,
"end": 4992,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 4919,
"end": 4992,
"name": "SWAP6",
"source": 2
},
{
"begin": 4919,
"end": 4992,
"name": "POP",
"source": 2
},
{
"begin": 4875,
"end": 5002,
"name": "POP",
"source": 2
},
{
"begin": 5041,
"end": 5043,
"name": "PUSH",
"source": 2,
"value": "20"
},
{
"begin": 5067,
"end": 5130,
"name": "PUSH [tag]",
"source": 2,
"value": "125"
},
{
"begin": 5122,
"end": 5129,
"name": "DUP9",
"source": 2
},
{
"begin": 5113,
"end": 5119,
"name": "DUP3",
"source": 2
},
{
"begin": 5102,
"end": 5111,
"name": "DUP10",
"source": 2
},
{
"begin": 5098,
"end": 5120,
"name": "ADD",
"source": 2
},
{
"begin": 5067,
"end": 5130,
"name": "PUSH [tag]",
"source": 2,
"value": "62"
},
{
"begin": 5067,
"end": 5130,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 5067,
"end": 5130,
"name": "tag",
"source": 2,
"value": "125"
},
{
"begin": 5067,
"end": 5130,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5057,
"end": 5130,
"name": "SWAP5",
"source": 2
},
{
"begin": 5057,
"end": 5130,
"name": "POP",
"source": 2
},
{
"begin": 5012,
"end": 5140,
"name": "POP",
"source": 2
},
{
"begin": 5179,
"end": 5181,
"name": "PUSH",
"source": 2,
"value": "40"
},
{
"begin": 5205,
"end": 5269,
"name": "PUSH [tag]",
"source": 2,
"value": "126"
},
{
"begin": 5261,
"end": 5268,
"name": "DUP9",
"source": 2
},
{
"begin": 5252,
"end": 5258,
"name": "DUP3",
"source": 2
},
{
"begin": 5241,
"end": 5250,
"name": "DUP10",
"source": 2
},
{
"begin": 5237,
"end": 5259,
"name": "ADD",
"source": 2
},
{
"begin": 5205,
"end": 5269,
"name": "PUSH [tag]",
"source": 2,
"value": "63"
},
{
"begin": 5205,
"end": 5269,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 5205,
"end": 5269,
"name": "tag",
"source": 2,
"value": "126"
},
{
"begin": 5205,
"end": 5269,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5195,
"end": 5269,
"name": "SWAP4",
"source": 2
},
{
"begin": 5195,
"end": 5269,
"name": "POP",
"source": 2
},
{
"begin": 5150,
"end": 5279,
"name": "POP",
"source": 2
},
{
"begin": 5318,
"end": 5320,
"name": "PUSH",
"source": 2,
"value": "60"
},
{
"begin": 5344,
"end": 5408,
"name": "PUSH [tag]",
"source": 2,
"value": "127"
},
{
"begin": 5400,
"end": 5407,
"name": "DUP9",
"source": 2
},
{
"begin": 5391,
"end": 5397,
"name": "DUP3",
"source": 2
},
{
"begin": 5380,
"end": 5389,
"name": "DUP10",
"source": 2
},
{
"begin": 5376,
"end": 5398,
"name": "ADD",
"source": 2
},
{
"begin": 5344,
"end": 5408,
"name": "PUSH [tag]",
"source": 2,
"value": "63"
},
{
"begin": 5344,
"end": 5408,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 5344,
"end": 5408,
"name": "tag",
"source": 2,
"value": "127"
},
{
"begin": 5344,
"end": 5408,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5334,
"end": 5408,
"name": "SWAP3",
"source": 2
},
{
"begin": 5334,
"end": 5408,
"name": "POP",
"source": 2
},
{
"begin": 5289,
"end": 5418,
"name": "POP",
"source": 2
},
{
"begin": 5457,
"end": 5460,
"name": "PUSH",
"source": 2,
"value": "80"
},
{
"begin": 5484,
"end": 5547,
"name": "PUSH [tag]",
"source": 2,
"value": "128"
},
{
"begin": 5539,
"end": 5546,
"name": "DUP9",
"source": 2
},
{
"begin": 5530,
"end": 5536,
"name": "DUP3",
"source": 2
},
{
"begin": 5519,
"end": 5528,
"name": "DUP10",
"source": 2
},
{
"begin": 5515,
"end": 5537,
"name": "ADD",
"source": 2
},
{
"begin": 5484,
"end": 5547,
"name": "PUSH [tag]",
"source": 2,
"value": "60"
},
{
"begin": 5484,
"end": 5547,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 5484,
"end": 5547,
"name": "tag",
"source": 2,
"value": "128"
},
{
"begin": 5484,
"end": 5547,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5474,
"end": 5547,
"name": "SWAP2",
"source": 2
},
{
"begin": 5474,
"end": 5547,
"name": "POP",
"source": 2
},
{
"begin": 5428,
"end": 5557,
"name": "POP",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"name": "SWAP3",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"name": "SWAP6",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"name": "POP",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"name": "SWAP3",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"name": "SWAP6",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"name": "SWAP1",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"name": "SWAP4",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"name": "POP",
"source": 2
},
{
"begin": 4593,
"end": 5564,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 5570,
"end": 5750,
"name": "tag",
"source": 2,
"value": "64"
},
{
"begin": 5570,
"end": 5750,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5618,
"end": 5695,
"name": "PUSH",
"source": 2,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 5615,
"end": 5616,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 5608,
"end": 5696,
"name": "MSTORE",
"source": 2
},
{
"begin": 5715,
"end": 5719,
"name": "PUSH",
"source": 2,
"value": "11"
},
{
"begin": 5712,
"end": 5713,
"name": "PUSH",
"source": 2,
"value": "4"
},
{
"begin": 5705,
"end": 5720,
"name": "MSTORE",
"source": 2
},
{
"begin": 5739,
"end": 5743,
"name": "PUSH",
"source": 2,
"value": "24"
},
{
"begin": 5736,
"end": 5737,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 5729,
"end": 5744,
"name": "REVERT",
"source": 2
},
{
"begin": 5756,
"end": 6166,
"name": "tag",
"source": 2,
"value": "39"
},
{
"begin": 5756,
"end": 6166,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5796,
"end": 5803,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 5819,
"end": 5839,
"name": "PUSH [tag]",
"source": 2,
"value": "131"
},
{
"begin": 5837,
"end": 5838,
"name": "DUP3",
"source": 2
},
{
"begin": 5819,
"end": 5839,
"name": "PUSH [tag]",
"source": 2,
"value": "49"
},
{
"begin": 5819,
"end": 5839,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 5819,
"end": 5839,
"name": "tag",
"source": 2,
"value": "131"
},
{
"begin": 5819,
"end": 5839,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5814,
"end": 5839,
"name": "SWAP2",
"source": 2
},
{
"begin": 5814,
"end": 5839,
"name": "POP",
"source": 2
},
{
"begin": 5853,
"end": 5873,
"name": "PUSH [tag]",
"source": 2,
"value": "132"
},
{
"begin": 5871,
"end": 5872,
"name": "DUP4",
"source": 2
},
{
"begin": 5853,
"end": 5873,
"name": "PUSH [tag]",
"source": 2,
"value": "49"
},
{
"begin": 5853,
"end": 5873,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 5853,
"end": 5873,
"name": "tag",
"source": 2,
"value": "132"
},
{
"begin": 5853,
"end": 5873,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5848,
"end": 5873,
"name": "SWAP3",
"source": 2
},
{
"begin": 5848,
"end": 5873,
"name": "POP",
"source": 2
},
{
"begin": 5908,
"end": 5909,
"name": "DUP3",
"source": 2
},
{
"begin": 5905,
"end": 5906,
"name": "DUP3",
"source": 2
},
{
"begin": 5901,
"end": 5910,
"name": "MUL",
"source": 2
},
{
"begin": 5930,
"end": 5960,
"name": "PUSH [tag]",
"source": 2,
"value": "133"
},
{
"begin": 5948,
"end": 5959,
"name": "DUP2",
"source": 2
},
{
"begin": 5930,
"end": 5960,
"name": "PUSH [tag]",
"source": 2,
"value": "49"
},
{
"begin": 5930,
"end": 5960,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 5930,
"end": 5960,
"name": "tag",
"source": 2,
"value": "133"
},
{
"begin": 5930,
"end": 5960,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5919,
"end": 5960,
"name": "SWAP2",
"source": 2
},
{
"begin": 5919,
"end": 5960,
"name": "POP",
"source": 2
},
{
"begin": 6109,
"end": 6110,
"name": "DUP3",
"source": 2
},
{
"begin": 6100,
"end": 6107,
"name": "DUP3",
"source": 2
},
{
"begin": 6096,
"end": 6111,
"name": "DIV",
"source": 2
},
{
"begin": 6093,
"end": 6094,
"name": "DUP5",
"source": 2
},
{
"begin": 6090,
"end": 6112,
"name": "EQ",
"source": 2
},
{
"begin": 6070,
"end": 6071,
"name": "DUP4",
"source": 2
},
{
"begin": 6063,
"end": 6072,
"name": "ISZERO",
"source": 2
},
{
"begin": 6043,
"end": 6126,
"name": "OR",
"source": 2
},
{
"begin": 6020,
"end": 6159,
"name": "PUSH [tag]",
"source": 2,
"value": "134"
},
{
"begin": 6020,
"end": 6159,
"name": "JUMPI",
"source": 2
},
{
"begin": 6139,
"end": 6157,
"name": "PUSH [tag]",
"source": 2,
"value": "135"
},
{
"begin": 6139,
"end": 6157,
"name": "PUSH [tag]",
"source": 2,
"value": "64"
},
{
"begin": 6139,
"end": 6157,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 6139,
"end": 6157,
"name": "tag",
"source": 2,
"value": "135"
},
{
"begin": 6139,
"end": 6157,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 6020,
"end": 6159,
"name": "tag",
"source": 2,
"value": "134"
},
{
"begin": 6020,
"end": 6159,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 5804,
"end": 6166,
"name": "POP",
"source": 2
},
{
"begin": 5756,
"end": 6166,
"name": "SWAP3",
"source": 2
},
{
"begin": 5756,
"end": 6166,
"name": "SWAP2",
"source": 2
},
{
"begin": 5756,
"end": 6166,
"name": "POP",
"source": 2
},
{
"begin": 5756,
"end": 6166,
"name": "POP",
"source": 2
},
{
"begin": 5756,
"end": 6166,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
},
{
"begin": 6172,
"end": 6352,
"name": "tag",
"source": 2,
"value": "65"
},
{
"begin": 6172,
"end": 6352,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 6220,
"end": 6297,
"name": "PUSH",
"source": 2,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 6217,
"end": 6218,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 6210,
"end": 6298,
"name": "MSTORE",
"source": 2
},
{
"begin": 6317,
"end": 6321,
"name": "PUSH",
"source": 2,
"value": "12"
},
{
"begin": 6314,
"end": 6315,
"name": "PUSH",
"source": 2,
"value": "4"
},
{
"begin": 6307,
"end": 6322,
"name": "MSTORE",
"source": 2
},
{
"begin": 6341,
"end": 6345,
"name": "PUSH",
"source": 2,
"value": "24"
},
{
"begin": 6338,
"end": 6339,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 6331,
"end": 6346,
"name": "REVERT",
"source": 2
},
{
"begin": 6358,
"end": 6543,
"name": "tag",
"source": 2,
"value": "41"
},
{
"begin": 6358,
"end": 6543,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 6398,
"end": 6399,
"name": "PUSH",
"source": 2,
"value": "0"
},
{
"begin": 6415,
"end": 6435,
"name": "PUSH [tag]",
"source": 2,
"value": "138"
},
{
"begin": 6433,
"end": 6434,
"name": "DUP3",
"source": 2
},
{
"begin": 6415,
"end": 6435,
"name": "PUSH [tag]",
"source": 2,
"value": "49"
},
{
"begin": 6415,
"end": 6435,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 6415,
"end": 6435,
"name": "tag",
"source": 2,
"value": "138"
},
{
"begin": 6415,
"end": 6435,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 6410,
"end": 6435,
"name": "SWAP2",
"source": 2
},
{
"begin": 6410,
"end": 6435,
"name": "POP",
"source": 2
},
{
"begin": 6449,
"end": 6469,
"name": "PUSH [tag]",
"source": 2,
"value": "139"
},
{
"begin": 6467,
"end": 6468,
"name": "DUP4",
"source": 2
},
{
"begin": 6449,
"end": 6469,
"name": "PUSH [tag]",
"source": 2,
"value": "49"
},
{
"begin": 6449,
"end": 6469,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 6449,
"end": 6469,
"name": "tag",
"source": 2,
"value": "139"
},
{
"begin": 6449,
"end": 6469,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 6444,
"end": 6469,
"name": "SWAP3",
"source": 2
},
{
"begin": 6444,
"end": 6469,
"name": "POP",
"source": 2
},
{
"begin": 6488,
"end": 6489,
"name": "DUP3",
"source": 2
},
{
"begin": 6478,
"end": 6513,
"name": "PUSH [tag]",
"source": 2,
"value": "140"
},
{
"begin": 6478,
"end": 6513,
"name": "JUMPI",
"source": 2
},
{
"begin": 6493,
"end": 6511,
"name": "PUSH [tag]",
"source": 2,
"value": "141"
},
{
"begin": 6493,
"end": 6511,
"name": "PUSH [tag]",
"source": 2,
"value": "65"
},
{
"begin": 6493,
"end": 6511,
"jumpType": "[in]",
"name": "JUMP",
"source": 2
},
{
"begin": 6493,
"end": 6511,
"name": "tag",
"source": 2,
"value": "141"
},
{
"begin": 6493,
"end": 6511,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 6478,
"end": 6513,
"name": "tag",
"source": 2,
"value": "140"
},
{
"begin": 6478,
"end": 6513,
"name": "JUMPDEST",
"source": 2
},
{
"begin": 6535,
"end": 6536,
"name": "DUP3",
"source": 2
},
{
"begin": 6532,
"end": 6533,
"name": "DUP3",
"source": 2
},
{
"begin": 6528,
"end": 6537,
"name": "DIV",
"source": 2
},
{
"begin": 6523,
"end": 6537,
"name": "SWAP1",
"source": 2
},
{
"begin": 6523,
"end": 6537,
"name": "POP",
"source": 2
},
{
"begin": 6358,
"end": 6543,
"name": "SWAP3",
"source": 2
},
{
"begin": 6358,
"end": 6543,
"name": "SWAP2",
"source": 2
},
{
"begin": 6358,
"end": 6543,
"name": "POP",
"source": 2
},
{
"begin": 6358,
"end": 6543,
"name": "POP",
"source": 2
},
{
"begin": 6358,
"end": 6543,
"jumpType": "[out]",
"name": "JUMP",
"source": 2
}
]
}
},
"sourceList": [
"@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol",
"test/FundMe.sol",
"#utility.yul"
]
},
"methodIdentifiers": {
"convertEthToUsd(uint256)": "c086381e",
"fund()": "b60d4288",
"fundersToAmount(address)": "9f883a05",
"getChainlinkDataFeedLatestAnswer()": "bea4dfb5"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.8.26+commit.8a97fa7a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"ethAmount\",\"type\":\"uint256\"}],\"name\":\"convertEthToUsd\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"fund\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"fundersToAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getChainlinkDataFeedLatestAnswer\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"getChainlinkDataFeedLatestAnswer()\":{\"notice\":\"Returns the latest answer.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/FundMe.sol\":\"FundMe\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol\":{\"keccak256\":\"0x257a8d28fa83d3d942547c8e129ef465e4b5f3f31171e7be4739a4c98da6b4f0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6d39e11b1dc7b9b8ccdabbc9be442ab7cda4a81c748f57e316dcb1bcb4a28bf9\",\"dweb:/ipfs/QmaG6vz6W6iEUBsbHSBob5mdcitYxWjoygxREHpsJHfWrS\"]},\"test/FundMe.sol\":{\"keccak256\":\"0xddc2cd46afe3a572f8099fd6a66e4805d3dc36e6010525b4f3564442e39ebe28\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b12ce5ba6782e0a9ad638e2b77e6bd6f1d165772bad64f3207be5957622ea7ff\",\"dweb:/ipfs/QmRciMmY8uvpEDct3cxgBpWW6rTxzGjpphe9tKb8wQiKV3\"]}},\"version\":1}",
"storageLayout": {
"storage": [
{
"astId": 53,
"contract": "test/FundMe.sol:FundMe",
"label": "fundersToAmount",
"offset": 0,
"slot": "0",
"type": "t_mapping(t_address,t_uint256)"
},
{
"astId": 56,
"contract": "test/FundMe.sol:FundMe",
"label": "dataFeed",
"offset": 0,
"slot": "1",
"type": "t_contract(AggregatorV3Interface)45"
},
{
"astId": 63,
"contract": "test/FundMe.sol:FundMe",
"label": "MINIMUM_VALUE",
"offset": 0,
"slot": "2",
"type": "t_uint256"
}
],
"types": {
"t_address": {
"encoding": "inplace",
"label": "address",
"numberOfBytes": "20"
},
"t_contract(AggregatorV3Interface)45": {
"encoding": "inplace",
"label": "contract AggregatorV3Interface",
"numberOfBytes": "20"
},
"t_mapping(t_address,t_uint256)": {
"encoding": "mapping",
"key": "t_address",
"label": "mapping(address => uint256)",
"numberOfBytes": "32",
"value": "t_uint256"
},
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
}
}
},
"userdoc": {
"kind": "user",
"methods": {
"getChainlinkDataFeedLatestAnswer()": {
"notice": "Returns the latest answer."
}
},
"version": 1
}
}
}
},
"sources": {
"@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol": {
"ast": {
"absolutePath": "@chainlink/contracts/src/v0.8/shared/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": [],
"canonicalName": "AggregatorV3Interface",
"contractDependencies": [],
"contractKind": "interface",
"fullyImplemented": false,
"id": 45,
"linearizedBaseContracts": [
45
],
"name": "AggregatorV3Interface",
"nameLocation": "120:21:0",
"nodeType": "ContractDefinition",
"nodes": [
{
"functionSelector": "313ce567",
"id": 6,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "decimals",
"nameLocation": "155:8:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2,
"nodeType": "ParameterList",
"parameters": [],
"src": "163:2:0"
},
"returnParameters": {
"id": 5,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 4,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 6,
"src": "189:5:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
},
"typeName": {
"id": 3,
"name": "uint8",
"nodeType": "ElementaryTypeName",
"src": "189:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
}
},
"visibility": "internal"
}
],
"src": "188:7:0"
},
"scope": 45,
"src": "146:50:0",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "7284e416",
"id": 11,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "description",
"nameLocation": "209:11:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 7,
"nodeType": "ParameterList",
"parameters": [],
"src": "220:2:0"
},
"returnParameters": {
"id": 10,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 9,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 11,
"src": "246:13:0",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 8,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "246:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"visibility": "internal"
}
],
"src": "245:15:0"
},
"scope": 45,
"src": "200:61:0",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "54fd4d50",
"id": 16,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "version",
"nameLocation": "274:7:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 12,
"nodeType": "ParameterList",
"parameters": [],
"src": "281:2:0"
},
"returnParameters": {
"id": 15,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 14,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 16,
"src": "307:7:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 13,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "307:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "306:9:0"
},
"scope": 45,
"src": "265:51:0",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "9a6fc8f5",
"id": 31,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "getRoundData",
"nameLocation": "329:12:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 19,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 18,
"mutability": "mutable",
"name": "_roundId",
"nameLocation": "354:8:0",
"nodeType": "VariableDeclaration",
"scope": 31,
"src": "347:15:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint80",
"typeString": "uint80"
},
"typeName": {
"id": 17,
"name": "uint80",
"nodeType": "ElementaryTypeName",
"src": "347:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint80",
"typeString": "uint80"
}
},
"visibility": "internal"
}
],
"src": "341:25:0"
},
"returnParameters": {
"id": 30,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 21,
"mutability": "mutable",
"name": "roundId",
"nameLocation": "397:7:0",
"nodeType": "VariableDeclaration",
"scope": 31,
"src": "390:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint80",
"typeString": "uint80"
},
"typeName": {
"id": 20,
"name": "uint80",
"nodeType": "ElementaryTypeName",
"src": "390:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint80",
"typeString": "uint80"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 23,
"mutability": "mutable",
"name": "answer",
"nameLocation": "413:6:0",
"nodeType": "VariableDeclaration",
"scope": 31,
"src": "406:13:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 22,
"name": "int256",
"nodeType": "ElementaryTypeName",
"src": "406:6:0",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 25,
"mutability": "mutable",
"name": "startedAt",
"nameLocation": "429:9:0",
"nodeType": "VariableDeclaration",
"scope": 31,
"src": "421:17:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 24,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "421:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 27,
"mutability": "mutable",
"name": "updatedAt",
"nameLocation": "448:9:0",
"nodeType": "VariableDeclaration",
"scope": 31,
"src": "440:17:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 26,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "440:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 29,
"mutability": "mutable",
"name": "answeredInRound",
"nameLocation": "466:15:0",
"nodeType": "VariableDeclaration",
"scope": 31,
"src": "459:22:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint80",
"typeString": "uint80"
},
"typeName": {
"id": 28,
"name": "uint80",
"nodeType": "ElementaryTypeName",
"src": "459:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint80",
"typeString": "uint80"
}
},
"visibility": "internal"
}
],
"src": "389:93:0"
},
"scope": 45,
"src": "320:163:0",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
},
{
"functionSelector": "feaf968c",
"id": 44,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "latestRoundData",
"nameLocation": "496:15:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 32,
"nodeType": "ParameterList",
"parameters": [],
"src": "511:2:0"
},
"returnParameters": {
"id": 43,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 34,
"mutability": "mutable",
"name": "roundId",
"nameLocation": "556:7:0",
"nodeType": "VariableDeclaration",
"scope": 44,
"src": "549:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint80",
"typeString": "uint80"
},
"typeName": {
"id": 33,
"name": "uint80",
"nodeType": "ElementaryTypeName",
"src": "549: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": "588:9:0",
"nodeType": "VariableDeclaration",
"scope": 44,
"src": "580:17:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 37,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "580:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 40,
"mutability": "mutable",
"name": "updatedAt",
"nameLocation": "607:9:0",
"nodeType": "VariableDeclaration",
"scope": 44,
"src": "599:17:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 39,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "599:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 42,
"mutability": "mutable",
"name": "answeredInRound",
"nameLocation": "625:15:0",
"nodeType": "VariableDeclaration",
"scope": 44,
"src": "618:22:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint80",
"typeString": "uint80"
},
"typeName": {
"id": 41,
"name": "uint80",
"nodeType": "ElementaryTypeName",
"src": "618:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint80",
"typeString": "uint80"
}
},
"visibility": "internal"
}
],
"src": "548:93:0"
},
"scope": 45,
"src": "487:155:0",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
}
],
"scope": 46,
"src": "110:534:0",
"usedErrors": [],
"usedEvents": []
}
],
"src": "32:613:0"
},
"id": 0
},
"test/FundMe.sol": {
"ast": {
"absolutePath": "test/FundMe.sol",
"exportedSymbols": {
"AggregatorV3Interface": [
45
],
"FundMe": [
128
]
},
"id": 129,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 47,
"literals": [
"solidity",
"^",
"0.8",
".20"
],
"nodeType": "PragmaDirective",
"src": "32:24:1"
},
{
"absolutePath": "@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol",
"file": "@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol",
"id": 49,
"nameLocation": "-1:-1:-1",
"nodeType": "ImportDirective",
"scope": 129,
"sourceUnit": 46,
"src": "57:112:1",
"symbolAliases": [
{
"foreign": {
"id": 48,
"name": "AggregatorV3Interface",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 45,
"src": "65:21:1",
"typeDescriptions": {}
},
"nameLocation": "-1:-1:-1"
}
],
"unitAlias": ""
},
{
"abstract": false,
"baseContracts": [],
"canonicalName": "FundMe",
"contractDependencies": [],
"contractKind": "contract",
"fullyImplemented": true,
"id": 128,
"linearizedBaseContracts": [
128
],
"name": "FundMe",
"nameLocation": "180:6:1",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"functionSelector": "9f883a05",
"id": 53,
"mutability": "mutable",
"name": "fundersToAmount",
"nameLocation": "225:15:1",
"nodeType": "VariableDeclaration",
"scope": 128,
"src": "192:48:1",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
},
"typeName": {
"id": 52,
"keyName": "",
"keyNameLocation": "-1:-1:-1",
"keyType": {
"id": 50,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "200:7:1",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Mapping",
"src": "192:25:1",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
},
"valueName": "",
"valueNameLocation": "-1:-1:-1",
"valueType": {
"id": 51,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "209:7:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
},
"visibility": "public"
},
{
"constant": false,
"id": 56,
"mutability": "mutable",
"name": "dataFeed",
"nameLocation": "277:8:1",
"nodeType": "VariableDeclaration",
"scope": 128,
"src": "246:39:1",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45",
"typeString": "contract AggregatorV3Interface"
},
"typeName": {
"id": 55,
"nodeType": "UserDefinedTypeName",
"pathNode": {
"id": 54,
"name": "AggregatorV3Interface",
"nameLocations": [
"246:21:1"
],
"nodeType": "IdentifierPath",
"referencedDeclaration": 45,
"src": "246:21:1"
},
"referencedDeclaration": 45,
"src": "246:21:1",
"typeDescriptions": {
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45",
"typeString": "contract AggregatorV3Interface"
}
},
"visibility": "internal"
},
{
"constant": false,
"id": 63,
"mutability": "mutable",
"name": "MINIMUM_VALUE",
"nameLocation": "299:13:1",
"nodeType": "VariableDeclaration",
"scope": 128,
"src": "291:36:1",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 57,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "291:7:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": {
"commonType": {
"typeIdentifier": "t_rational_100000000000000000000_by_1",
"typeString": "int_const 100000000000000000000"
},
"id": 62,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"hexValue": "313030",
"id": 58,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "315:3:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_100_by_1",
"typeString": "int_const 100"
},
"value": "100"
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"commonType": {
"typeIdentifier": "t_rational_1000000000000000000_by_1",
"typeString": "int_const 1000000000000000000"
},
"id": 61,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"hexValue": "3130",
"id": 59,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "320:2:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
},
"value": "10"
},
"nodeType": "BinaryOperation",
"operator": "**",
"rightExpression": {
"hexValue": "3138",
"id": 60,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "325:2:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_18_by_1",
"typeString": "int_const 18"
},
"value": "18"
},
"src": "320:7:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_1000000000000000000_by_1",
"typeString": "int_const 1000000000000000000"
}
},
"src": "315:12:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_100000000000000000000_by_1",
"typeString": "int_const 100000000000000000000"
}
},
"visibility": "internal"
},
{
"body": {
"id": 72,
"nodeType": "Block",
"src": "346:93:1",
"statements": [
{
"expression": {
"id": 70,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"id": 66,
"name": "dataFeed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 56,
"src": "356:8:1",
"typeDescriptions": {
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45",
"typeString": "contract AggregatorV3Interface"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"arguments": [
{
"hexValue": "307836393441413137363933353732313544453446414330383162663166333039614443333235333036",
"id": 68,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "389:42:1",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"value": "0x694AA1769357215DE4FAC081bf1f309aDC325306"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 67,
"name": "AggregatorV3Interface",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 45,
"src": "367:21:1",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_AggregatorV3Interface_$45_$",
"typeString": "type(contract AggregatorV3Interface)"
}
},
"id": 69,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"nameLocations": [],
"names": [],
"nodeType": "FunctionCall",
"src": "367:65:1",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45",
"typeString": "contract AggregatorV3Interface"
}
},
"src": "356:76:1",
"typeDescriptions": {
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45",
"typeString": "contract AggregatorV3Interface"
}
},
"id": 71,
"nodeType": "ExpressionStatement",
"src": "356:76:1"
}
]
},
"id": 73,
"implemented": true,
"kind": "constructor",
"modifiers": [],
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 64,
"nodeType": "ParameterList",
"parameters": [],
"src": "344:2:1"
},
"returnParameters": {
"id": 65,
"nodeType": "ParameterList",
"parameters": [],
"src": "346:0:1"
},
"scope": 128,
"src": "333:106:1",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 86,
"nodeType": "Block",
"src": "478:85:1",
"statements": [
{
"expression": {
"arguments": [
{
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 82,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"arguments": [
{
"expression": {
"id": 78,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4294967281,
"src": "512:3:1",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 79,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberLocation": "516:5:1",
"memberName": "value",
"nodeType": "MemberAccess",
"src": "512:9:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 77,
"name": "convertEthToUsd",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 127,
"src": "496:15:1",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) view returns (uint256)"
}
},
"id": 80,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"nameLocations": [],
"names": [],
"nodeType": "FunctionCall",
"src": "496:26:1",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">=",
"rightExpression": {
"id": 81,
"name": "MINIMUM_VALUE",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 63,
"src": "526:13:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "496:43:1",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"hexValue": "53656e64206d6f726520455448",
"id": 83,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "540:15:1",
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8",
"typeString": "literal_string \"Send more ETH\""
},
"value": "Send more ETH"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8",
"typeString": "literal_string \"Send more ETH\""
}
],
"id": 76,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
4294967278,
4294967278,
4294967278
],
"referencedDeclaration": 4294967278,
"src": "488:7:1",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 84,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"nameLocations": [],
"names": [],
"nodeType": "FunctionCall",
"src": "488:68:1",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 85,
"nodeType": "ExpressionStatement",
"src": "488:68:1"
}
]
},
"functionSelector": "b60d4288",
"id": 87,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "fund",
"nameLocation": "454:4:1",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 74,
"nodeType": "ParameterList",
"parameters": [],
"src": "458:2:1"
},
"returnParameters": {
"id": 75,
"nodeType": "ParameterList",
"parameters": [],
"src": "478:0:1"
},
"scope": 128,
"src": "445:118:1",
"stateMutability": "payable",
"virtual": false,
"visibility": "external"
},
{
"body": {
"id": 101,
"nodeType": "Block",
"src": "688:268:1",
"statements": [
{
"assignments": [
null,
94,
null,
null,
null
],
"declarations": [
null,
{
"constant": false,
"id": 94,
"mutability": "mutable",
"name": "answer",
"nameLocation": "777:6:1",
"nodeType": "VariableDeclaration",
"scope": 101,
"src": "773:10:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 93,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "773:3:1",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"visibility": "internal"
},
null,
null,
null
],
"id": 98,
"initialValue": {
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"id": 95,
"name": "dataFeed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 56,
"src": "900:8:1",
"typeDescriptions": {
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45",
"typeString": "contract AggregatorV3Interface"
}
},
"id": 96,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberLocation": "909:15:1",
"memberName": "latestRoundData",
"nodeType": "MemberAccess",
"referencedDeclaration": 44,
"src": "900:24: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": 97,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"nameLocations": [],
"names": [],
"nodeType": "FunctionCall",
"src": "900:26: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": "725:201:1"
},
{
"expression": {
"id": 99,
"name": "answer",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 94,
"src": "943:6:1",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"functionReturnParameters": 92,
"id": 100,
"nodeType": "Return",
"src": "936:13:1"
}
]
},
"documentation": {
"id": 88,
"nodeType": "StructuredDocumentation",
"src": "568:45:1",
"text": " Returns the latest answer."
},
"functionSelector": "bea4dfb5",
"id": 102,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "getChainlinkDataFeedLatestAnswer",
"nameLocation": "627:32:1",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 89,
"nodeType": "ParameterList",
"parameters": [],
"src": "659:2:1"
},
"returnParameters": {
"id": 92,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 91,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 102,
"src": "683:3:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 90,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "683:3:1",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"visibility": "internal"
}
],
"src": "682:5:1"
},
"scope": 128,
"src": "618:338:1",
"stateMutability": "view",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 126,
"nodeType": "Block",
"src": "1034:120:1",
"statements": [
{
"assignments": [
110
],
"declarations": [
{
"constant": false,
"id": 110,
"mutability": "mutable",
"name": "price",
"nameLocation": "1052:5:1",
"nodeType": "VariableDeclaration",
"scope": 126,
"src": "1044:13:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 109,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1044:7:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"id": 116,
"initialValue": {
"arguments": [
{
"arguments": [],
"expression": {
"argumentTypes": [],
"id": 113,
"name": "getChainlinkDataFeedLatestAnswer",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 102,
"src": "1068:32:1",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$__$returns$_t_int256_$",
"typeString": "function () view returns (int256)"
}
},
"id": 114,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"nameLocations": [],
"names": [],
"nodeType": "FunctionCall",
"src": "1068:34:1",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_int256",
"typeString": "int256"
}
],
"id": 112,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "1060:7:1",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": {
"id": 111,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1060:7:1",
"typeDescriptions": {}
}
},
"id": 115,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"nameLocations": [],
"names": [],
"nodeType": "FunctionCall",
"src": "1060:43:1",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "1044:59:1"
},
{
"expression": {
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 124,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 119,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"id": 117,
"name": "ethAmount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 104,
"src": "1120:9:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"id": 118,
"name": "price",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 110,
"src": "1132:5:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1120:17:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "/",
"rightExpression": {
"components": [
{
"commonType": {
"typeIdentifier": "t_rational_100000000_by_1",
"typeString": "int_const 100000000"
},
"id": 122,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"hexValue": "3130",
"id": 120,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1140:2:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
},
"value": "10"
},
"nodeType": "BinaryOperation",
"operator": "**",
"rightExpression": {
"hexValue": "38",
"id": 121,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1145:1:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_8_by_1",
"typeString": "int_const 8"
},
"value": "8"
},
"src": "1140:6:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_100000000_by_1",
"typeString": "int_const 100000000"
}
}
],
"id": 123,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "1139:8:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_100000000_by_1",
"typeString": "int_const 100000000"
}
},
"src": "1120:27:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 108,
"id": 125,
"nodeType": "Return",
"src": "1113:34:1"
}
]
},
"functionSelector": "c086381e",
"id": 127,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "convertEthToUsd",
"nameLocation": "971:15:1",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 105,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 104,
"mutability": "mutable",
"name": "ethAmount",
"nameLocation": "995:9:1",
"nodeType": "VariableDeclaration",
"scope": 127,
"src": "987:17:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 103,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "987:7:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "986:19:1"
},
"returnParameters": {
"id": 108,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 107,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 127,
"src": "1026:7:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 106,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1026:7:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "1025:9:1"
},
"scope": 128,
"src": "962:192:1",
"stateMutability": "view",
"virtual": false,
"visibility": "public"
}
],
"scope": 129,
"src": "171:985:1",
"usedErrors": [],
"usedEvents": []
}
],
"src": "32:1124:1"
},
"id": 1
}
}
}
}
{
"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": {
"@_73": {
"entryPoint": null,
"id": 73,
"parameterSlots": 0,
"returnSlots": 0
}
},
"generatedSources": [],
"linkReferences": {},
"object": "608060405268056bc75e2d63100000600255348015601b575f80fd5b5073694aa1769357215de4fac081bf1f309adc32530660015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506105ca8061007d5f395ff3fe60806040526004361061003e575f3560e01c80639f883a0514610042578063b60d42881461007e578063bea4dfb514610088578063c086381e146100b2575b5f80fd5b34801561004d575f80fd5b506100686004803603810190610063919061027b565b6100ee565b60405161007591906102be565b60405180910390f35b610086610102565b005b348015610093575f80fd5b5061009c610151565b6040516100a991906102ef565b60405180910390f35b3480156100bd575f80fd5b506100d860048036038101906100d39190610332565b6101ee565b6040516100e591906102be565b60405180910390f35b5f602052805f5260405f205f915090505481565b60025461010e346101ee565b101561014f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610146906103b7565b60405180910390fd5b565b5f8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156101bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101e19190610452565b5050509150508091505090565b5f806101f8610151565b90506305f5e100818461020b91906104f6565b6102159190610564565b915050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61024a82610221565b9050919050565b61025a81610240565b8114610264575f80fd5b50565b5f8135905061027581610251565b92915050565b5f602082840312156102905761028f61021d565b5b5f61029d84828501610267565b91505092915050565b5f819050919050565b6102b8816102a6565b82525050565b5f6020820190506102d15f8301846102af565b92915050565b5f819050919050565b6102e9816102d7565b82525050565b5f6020820190506103025f8301846102e0565b92915050565b610311816102a6565b811461031b575f80fd5b50565b5f8135905061032c81610308565b92915050565b5f602082840312156103475761034661021d565b5b5f6103548482850161031e565b91505092915050565b5f82825260208201905092915050565b7f53656e64206d6f726520455448000000000000000000000000000000000000005f82015250565b5f6103a1600d8361035d565b91506103ac8261036d565b602082019050919050565b5f6020820190508181035f8301526103ce81610395565b9050919050565b5f69ffffffffffffffffffff82169050919050565b6103f3816103d5565b81146103fd575f80fd5b50565b5f8151905061040e816103ea565b92915050565b61041d816102d7565b8114610427575f80fd5b50565b5f8151905061043881610414565b92915050565b5f8151905061044c81610308565b92915050565b5f805f805f60a0868803121561046b5761046a61021d565b5b5f61047888828901610400565b95505060206104898882890161042a565b945050604061049a8882890161043e565b93505060606104ab8882890161043e565b92505060806104bc88828901610400565b9150509295509295909350565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610500826102a6565b915061050b836102a6565b9250828202610519816102a6565b915082820484148315176105305761052f6104c9565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61056e826102a6565b9150610579836102a6565b92508261058957610588610537565b5b82820490509291505056fea26469706673582212204929cb025ea16aba87187dd39a401e222cdcb9a9ccd48b6b3dfaef9a091ec05664736f6c634300081a0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH9 0x56BC75E2D63100000 PUSH1 0x2 SSTORE CALLVALUE DUP1 ISZERO PUSH1 0x1B JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH20 0x694AA1769357215DE4FAC081BF1F309ADC325306 PUSH1 0x1 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x5CA DUP1 PUSH2 0x7D PUSH0 CODECOPY PUSH0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x3E JUMPI PUSH0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9F883A05 EQ PUSH2 0x42 JUMPI DUP1 PUSH4 0xB60D4288 EQ PUSH2 0x7E JUMPI DUP1 PUSH4 0xBEA4DFB5 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0xC086381E EQ PUSH2 0xB2 JUMPI JUMPDEST PUSH0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4D JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0x68 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x63 SWAP2 SWAP1 PUSH2 0x27B JUMP JUMPDEST PUSH2 0xEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x75 SWAP2 SWAP1 PUSH2 0x2BE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x86 PUSH2 0x102 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x93 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0x9C PUSH2 0x151 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA9 SWAP2 SWAP1 PUSH2 0x2EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBD JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0xD8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD3 SWAP2 SWAP1 PUSH2 0x332 JUMP JUMPDEST PUSH2 0x1EE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x2BE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH0 PUSH1 0x20 MSTORE DUP1 PUSH0 MSTORE PUSH1 0x40 PUSH0 KECCAK256 PUSH0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH2 0x10E CALLVALUE PUSH2 0x1EE JUMP JUMPDEST LT ISZERO PUSH2 0x14F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x146 SWAP1 PUSH2 0x3B7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH0 DUP1 PUSH1 0x1 PUSH0 SWAP1 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 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1BD JUMPI RETURNDATASIZE PUSH0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH0 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 0x1E1 SWAP2 SWAP1 PUSH2 0x452 JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x1F8 PUSH2 0x151 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP2 DUP5 PUSH2 0x20B SWAP2 SWAP1 PUSH2 0x4F6 JUMP JUMPDEST PUSH2 0x215 SWAP2 SWAP1 PUSH2 0x564 JUMP JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x24A DUP3 PUSH2 0x221 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25A DUP2 PUSH2 0x240 JUMP JUMPDEST DUP2 EQ PUSH2 0x264 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x275 DUP2 PUSH2 0x251 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x290 JUMPI PUSH2 0x28F PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x29D DUP5 DUP3 DUP6 ADD PUSH2 0x267 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2B8 DUP2 PUSH2 0x2A6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2D1 PUSH0 DUP4 ADD DUP5 PUSH2 0x2AF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2E9 DUP2 PUSH2 0x2D7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x302 PUSH0 DUP4 ADD DUP5 PUSH2 0x2E0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x311 DUP2 PUSH2 0x2A6 JUMP JUMPDEST DUP2 EQ PUSH2 0x31B JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x32C DUP2 PUSH2 0x308 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x347 JUMPI PUSH2 0x346 PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x354 DUP5 DUP3 DUP6 ADD PUSH2 0x31E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x53656E64206D6F72652045544800000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x3A1 PUSH1 0xD DUP4 PUSH2 0x35D JUMP JUMPDEST SWAP2 POP PUSH2 0x3AC DUP3 PUSH2 0x36D JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x3CE DUP2 PUSH2 0x395 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3F3 DUP2 PUSH2 0x3D5 JUMP JUMPDEST DUP2 EQ PUSH2 0x3FD JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x40E DUP2 PUSH2 0x3EA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x41D DUP2 PUSH2 0x2D7 JUMP JUMPDEST DUP2 EQ PUSH2 0x427 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x438 DUP2 PUSH2 0x414 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x44C DUP2 PUSH2 0x308 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 DUP1 PUSH0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x46B JUMPI PUSH2 0x46A PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x478 DUP9 DUP3 DUP10 ADD PUSH2 0x400 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x489 DUP9 DUP3 DUP10 ADD PUSH2 0x42A JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x49A DUP9 DUP3 DUP10 ADD PUSH2 0x43E JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x4AB DUP9 DUP3 DUP10 ADD PUSH2 0x43E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x4BC DUP9 DUP3 DUP10 ADD PUSH2 0x400 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x500 DUP3 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x50B DUP4 PUSH2 0x2A6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x519 DUP2 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x530 JUMPI PUSH2 0x52F PUSH2 0x4C9 JUMP JUMPDEST JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x56E DUP3 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x579 DUP4 PUSH2 0x2A6 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x589 JUMPI PUSH2 0x588 PUSH2 0x537 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 BLOBHASH 0x29 0xCB MUL MCOPY LOG1 PUSH11 0xBA87187DD39A401E222CDC 0xB9 0xA9 0xCC 0xD4 DUP12 PUSH12 0x3DFAEF9A091EC05664736F6C PUSH4 0x4300081A STOP CALLER ",
"sourceMap": "171:985:1:-:0;;;315:12;291:36;;333:106;;;;;;;;;;389:42;356:8;;:76;;;;;;;;;;;;;;;;;;171:985;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@convertEthToUsd_127": {
"entryPoint": 494,
"id": 127,
"parameterSlots": 1,
"returnSlots": 1
},
"@fund_87": {
"entryPoint": 258,
"id": 87,
"parameterSlots": 0,
"returnSlots": 0
},
"@fundersToAmount_53": {
"entryPoint": 238,
"id": 53,
"parameterSlots": 0,
"returnSlots": 0
},
"@getChainlinkDataFeedLatestAnswer_102": {
"entryPoint": 337,
"id": 102,
"parameterSlots": 0,
"returnSlots": 1
},
"abi_decode_t_address": {
"entryPoint": 615,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_int256_fromMemory": {
"entryPoint": 1066,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256": {
"entryPoint": 798,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256_fromMemory": {
"entryPoint": 1086,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint80_fromMemory": {
"entryPoint": 1024,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_address": {
"entryPoint": 635,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256": {
"entryPoint": 818,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory": {
"entryPoint": 1106,
"id": null,
"parameterSlots": 2,
"returnSlots": 5
},
"abi_encode_t_int256_to_t_int256_fromStack": {
"entryPoint": 736,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack": {
"entryPoint": 917,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 687,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed": {
"entryPoint": 751,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 951,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": 702,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 861,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_div_t_uint256": {
"entryPoint": 1380,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_mul_t_uint256": {
"entryPoint": 1270,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_address": {
"entryPoint": 576,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_int256": {
"entryPoint": 727,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 545,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 678,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint80": {
"entryPoint": 981,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 1225,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x12": {
"entryPoint": 1335,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 541,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8": {
"entryPoint": 877,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address": {
"entryPoint": 593,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_int256": {
"entryPoint": 1044,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 776,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint80": {
"entryPoint": 1002,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nativeSrc": "0:6546:2",
"nodeType": "YulBlock",
"src": "0:6546:2",
"statements": [
{
"body": {
"nativeSrc": "47:35:2",
"nodeType": "YulBlock",
"src": "47:35:2",
"statements": [
{
"nativeSrc": "57:19:2",
"nodeType": "YulAssignment",
"src": "57:19:2",
"value": {
"arguments": [
{
"kind": "number",
"nativeSrc": "73:2:2",
"nodeType": "YulLiteral",
"src": "73:2:2",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "67:5:2",
"nodeType": "YulIdentifier",
"src": "67:5:2"
},
"nativeSrc": "67:9:2",
"nodeType": "YulFunctionCall",
"src": "67:9:2"
},
"variableNames": [
{
"name": "memPtr",
"nativeSrc": "57:6:2",
"nodeType": "YulIdentifier",
"src": "57:6:2"
}
]
}
]
},
"name": "allocate_unbounded",
"nativeSrc": "7:75:2",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nativeSrc": "40:6:2",
"nodeType": "YulTypedName",
"src": "40:6:2",
"type": ""
}
],
"src": "7:75:2"
},
{
"body": {
"nativeSrc": "177:28:2",
"nodeType": "YulBlock",
"src": "177:28:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "194:1:2",
"nodeType": "YulLiteral",
"src": "194:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "197:1:2",
"nodeType": "YulLiteral",
"src": "197:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "187:6:2",
"nodeType": "YulIdentifier",
"src": "187:6:2"
},
"nativeSrc": "187:12:2",
"nodeType": "YulFunctionCall",
"src": "187:12:2"
},
"nativeSrc": "187:12:2",
"nodeType": "YulExpressionStatement",
"src": "187:12:2"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "88:117:2",
"nodeType": "YulFunctionDefinition",
"src": "88:117:2"
},
{
"body": {
"nativeSrc": "300:28:2",
"nodeType": "YulBlock",
"src": "300:28:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "317:1:2",
"nodeType": "YulLiteral",
"src": "317:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "320:1:2",
"nodeType": "YulLiteral",
"src": "320:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "310:6:2",
"nodeType": "YulIdentifier",
"src": "310:6:2"
},
"nativeSrc": "310:12:2",
"nodeType": "YulFunctionCall",
"src": "310:12:2"
},
"nativeSrc": "310:12:2",
"nodeType": "YulExpressionStatement",
"src": "310:12:2"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nativeSrc": "211:117:2",
"nodeType": "YulFunctionDefinition",
"src": "211:117:2"
},
{
"body": {
"nativeSrc": "379:81:2",
"nodeType": "YulBlock",
"src": "379:81:2",
"statements": [
{
"nativeSrc": "389:65:2",
"nodeType": "YulAssignment",
"src": "389:65:2",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "404:5:2",
"nodeType": "YulIdentifier",
"src": "404:5:2"
},
{
"kind": "number",
"nativeSrc": "411:42:2",
"nodeType": "YulLiteral",
"src": "411:42:2",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nativeSrc": "400:3:2",
"nodeType": "YulIdentifier",
"src": "400:3:2"
},
"nativeSrc": "400:54:2",
"nodeType": "YulFunctionCall",
"src": "400:54:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "389:7:2",
"nodeType": "YulIdentifier",
"src": "389:7:2"
}
]
}
]
},
"name": "cleanup_t_uint160",
"nativeSrc": "334:126:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "361:5:2",
"nodeType": "YulTypedName",
"src": "361:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "371:7:2",
"nodeType": "YulTypedName",
"src": "371:7:2",
"type": ""
}
],
"src": "334:126:2"
},
{
"body": {
"nativeSrc": "511:51:2",
"nodeType": "YulBlock",
"src": "511:51:2",
"statements": [
{
"nativeSrc": "521:35:2",
"nodeType": "YulAssignment",
"src": "521:35:2",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "550:5:2",
"nodeType": "YulIdentifier",
"src": "550:5:2"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nativeSrc": "532:17:2",
"nodeType": "YulIdentifier",
"src": "532:17:2"
},
"nativeSrc": "532:24:2",
"nodeType": "YulFunctionCall",
"src": "532:24:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "521:7:2",
"nodeType": "YulIdentifier",
"src": "521:7:2"
}
]
}
]
},
"name": "cleanup_t_address",
"nativeSrc": "466:96:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "493:5:2",
"nodeType": "YulTypedName",
"src": "493:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "503:7:2",
"nodeType": "YulTypedName",
"src": "503:7:2",
"type": ""
}
],
"src": "466:96:2"
},
{
"body": {
"nativeSrc": "611:79:2",
"nodeType": "YulBlock",
"src": "611:79:2",
"statements": [
{
"body": {
"nativeSrc": "668:16:2",
"nodeType": "YulBlock",
"src": "668:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "677:1:2",
"nodeType": "YulLiteral",
"src": "677:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "680:1:2",
"nodeType": "YulLiteral",
"src": "680:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "670:6:2",
"nodeType": "YulIdentifier",
"src": "670:6:2"
},
"nativeSrc": "670:12:2",
"nodeType": "YulFunctionCall",
"src": "670:12:2"
},
"nativeSrc": "670:12:2",
"nodeType": "YulExpressionStatement",
"src": "670:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "634:5:2",
"nodeType": "YulIdentifier",
"src": "634:5:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "659:5:2",
"nodeType": "YulIdentifier",
"src": "659:5:2"
}
],
"functionName": {
"name": "cleanup_t_address",
"nativeSrc": "641:17:2",
"nodeType": "YulIdentifier",
"src": "641:17:2"
},
"nativeSrc": "641:24:2",
"nodeType": "YulFunctionCall",
"src": "641:24:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "631:2:2",
"nodeType": "YulIdentifier",
"src": "631:2:2"
},
"nativeSrc": "631:35:2",
"nodeType": "YulFunctionCall",
"src": "631:35:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "624:6:2",
"nodeType": "YulIdentifier",
"src": "624:6:2"
},
"nativeSrc": "624:43:2",
"nodeType": "YulFunctionCall",
"src": "624:43:2"
},
"nativeSrc": "621:63:2",
"nodeType": "YulIf",
"src": "621:63:2"
}
]
},
"name": "validator_revert_t_address",
"nativeSrc": "568:122:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "604:5:2",
"nodeType": "YulTypedName",
"src": "604:5:2",
"type": ""
}
],
"src": "568:122:2"
},
{
"body": {
"nativeSrc": "748:87:2",
"nodeType": "YulBlock",
"src": "748:87:2",
"statements": [
{
"nativeSrc": "758:29:2",
"nodeType": "YulAssignment",
"src": "758:29:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "780:6:2",
"nodeType": "YulIdentifier",
"src": "780:6:2"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "767:12:2",
"nodeType": "YulIdentifier",
"src": "767:12:2"
},
"nativeSrc": "767:20:2",
"nodeType": "YulFunctionCall",
"src": "767:20:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "758:5:2",
"nodeType": "YulIdentifier",
"src": "758:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "823:5:2",
"nodeType": "YulIdentifier",
"src": "823:5:2"
}
],
"functionName": {
"name": "validator_revert_t_address",
"nativeSrc": "796:26:2",
"nodeType": "YulIdentifier",
"src": "796:26:2"
},
"nativeSrc": "796:33:2",
"nodeType": "YulFunctionCall",
"src": "796:33:2"
},
"nativeSrc": "796:33:2",
"nodeType": "YulExpressionStatement",
"src": "796:33:2"
}
]
},
"name": "abi_decode_t_address",
"nativeSrc": "696:139:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "726:6:2",
"nodeType": "YulTypedName",
"src": "726:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "734:3:2",
"nodeType": "YulTypedName",
"src": "734:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "742:5:2",
"nodeType": "YulTypedName",
"src": "742:5:2",
"type": ""
}
],
"src": "696:139:2"
},
{
"body": {
"nativeSrc": "907:263:2",
"nodeType": "YulBlock",
"src": "907:263:2",
"statements": [
{
"body": {
"nativeSrc": "953:83:2",
"nodeType": "YulBlock",
"src": "953:83:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "955:77:2",
"nodeType": "YulIdentifier",
"src": "955:77:2"
},
"nativeSrc": "955:79:2",
"nodeType": "YulFunctionCall",
"src": "955:79:2"
},
"nativeSrc": "955:79:2",
"nodeType": "YulExpressionStatement",
"src": "955:79:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "928:7:2",
"nodeType": "YulIdentifier",
"src": "928:7:2"
},
{
"name": "headStart",
"nativeSrc": "937:9:2",
"nodeType": "YulIdentifier",
"src": "937:9:2"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "924:3:2",
"nodeType": "YulIdentifier",
"src": "924:3:2"
},
"nativeSrc": "924:23:2",
"nodeType": "YulFunctionCall",
"src": "924:23:2"
},
{
"kind": "number",
"nativeSrc": "949:2:2",
"nodeType": "YulLiteral",
"src": "949:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "920:3:2",
"nodeType": "YulIdentifier",
"src": "920:3:2"
},
"nativeSrc": "920:32:2",
"nodeType": "YulFunctionCall",
"src": "920:32:2"
},
"nativeSrc": "917:119:2",
"nodeType": "YulIf",
"src": "917:119:2"
},
{
"nativeSrc": "1046:117:2",
"nodeType": "YulBlock",
"src": "1046:117:2",
"statements": [
{
"nativeSrc": "1061:15:2",
"nodeType": "YulVariableDeclaration",
"src": "1061:15:2",
"value": {
"kind": "number",
"nativeSrc": "1075:1:2",
"nodeType": "YulLiteral",
"src": "1075:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "1065:6:2",
"nodeType": "YulTypedName",
"src": "1065:6:2",
"type": ""
}
]
},
{
"nativeSrc": "1090:63:2",
"nodeType": "YulAssignment",
"src": "1090:63:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "1125:9:2",
"nodeType": "YulIdentifier",
"src": "1125:9:2"
},
{
"name": "offset",
"nativeSrc": "1136:6:2",
"nodeType": "YulIdentifier",
"src": "1136:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1121:3:2",
"nodeType": "YulIdentifier",
"src": "1121:3:2"
},
"nativeSrc": "1121:22:2",
"nodeType": "YulFunctionCall",
"src": "1121:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "1145:7:2",
"nodeType": "YulIdentifier",
"src": "1145:7:2"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "1100:20:2",
"nodeType": "YulIdentifier",
"src": "1100:20:2"
},
"nativeSrc": "1100:53:2",
"nodeType": "YulFunctionCall",
"src": "1100:53:2"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "1090:6:2",
"nodeType": "YulIdentifier",
"src": "1090:6:2"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_address",
"nativeSrc": "841:329:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "877:9:2",
"nodeType": "YulTypedName",
"src": "877:9:2",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "888:7:2",
"nodeType": "YulTypedName",
"src": "888:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "900:6:2",
"nodeType": "YulTypedName",
"src": "900:6:2",
"type": ""
}
],
"src": "841:329:2"
},
{
"body": {
"nativeSrc": "1221:32:2",
"nodeType": "YulBlock",
"src": "1221:32:2",
"statements": [
{
"nativeSrc": "1231:16:2",
"nodeType": "YulAssignment",
"src": "1231:16:2",
"value": {
"name": "value",
"nativeSrc": "1242:5:2",
"nodeType": "YulIdentifier",
"src": "1242:5:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "1231:7:2",
"nodeType": "YulIdentifier",
"src": "1231:7:2"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nativeSrc": "1176:77:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1203:5:2",
"nodeType": "YulTypedName",
"src": "1203:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "1213:7:2",
"nodeType": "YulTypedName",
"src": "1213:7:2",
"type": ""
}
],
"src": "1176:77:2"
},
{
"body": {
"nativeSrc": "1324:53:2",
"nodeType": "YulBlock",
"src": "1324:53:2",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "1341:3:2",
"nodeType": "YulIdentifier",
"src": "1341:3:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "1364:5:2",
"nodeType": "YulIdentifier",
"src": "1364:5:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "1346:17:2",
"nodeType": "YulIdentifier",
"src": "1346:17:2"
},
"nativeSrc": "1346:24:2",
"nodeType": "YulFunctionCall",
"src": "1346:24:2"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "1334:6:2",
"nodeType": "YulIdentifier",
"src": "1334:6:2"
},
"nativeSrc": "1334:37:2",
"nodeType": "YulFunctionCall",
"src": "1334:37:2"
},
"nativeSrc": "1334:37:2",
"nodeType": "YulExpressionStatement",
"src": "1334:37:2"
}
]
},
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "1259:118:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1312:5:2",
"nodeType": "YulTypedName",
"src": "1312:5:2",
"type": ""
},
{
"name": "pos",
"nativeSrc": "1319:3:2",
"nodeType": "YulTypedName",
"src": "1319:3:2",
"type": ""
}
],
"src": "1259:118:2"
},
{
"body": {
"nativeSrc": "1481:124:2",
"nodeType": "YulBlock",
"src": "1481:124:2",
"statements": [
{
"nativeSrc": "1491:26:2",
"nodeType": "YulAssignment",
"src": "1491:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "1503:9:2",
"nodeType": "YulIdentifier",
"src": "1503:9:2"
},
{
"kind": "number",
"nativeSrc": "1514:2:2",
"nodeType": "YulLiteral",
"src": "1514:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1499:3:2",
"nodeType": "YulIdentifier",
"src": "1499:3:2"
},
"nativeSrc": "1499:18:2",
"nodeType": "YulFunctionCall",
"src": "1499:18:2"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "1491:4:2",
"nodeType": "YulIdentifier",
"src": "1491:4:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "1571:6:2",
"nodeType": "YulIdentifier",
"src": "1571:6:2"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "1584:9:2",
"nodeType": "YulIdentifier",
"src": "1584:9:2"
},
{
"kind": "number",
"nativeSrc": "1595:1:2",
"nodeType": "YulLiteral",
"src": "1595:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1580:3:2",
"nodeType": "YulIdentifier",
"src": "1580:3:2"
},
"nativeSrc": "1580:17:2",
"nodeType": "YulFunctionCall",
"src": "1580:17:2"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "1527:43:2",
"nodeType": "YulIdentifier",
"src": "1527:43:2"
},
"nativeSrc": "1527:71:2",
"nodeType": "YulFunctionCall",
"src": "1527:71:2"
},
"nativeSrc": "1527:71:2",
"nodeType": "YulExpressionStatement",
"src": "1527:71:2"
}
]
},
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
"nativeSrc": "1383:222:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "1453:9:2",
"nodeType": "YulTypedName",
"src": "1453:9:2",
"type": ""
},
{
"name": "value0",
"nativeSrc": "1465:6:2",
"nodeType": "YulTypedName",
"src": "1465:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "1476:4:2",
"nodeType": "YulTypedName",
"src": "1476:4:2",
"type": ""
}
],
"src": "1383:222:2"
},
{
"body": {
"nativeSrc": "1655:32:2",
"nodeType": "YulBlock",
"src": "1655:32:2",
"statements": [
{
"nativeSrc": "1665:16:2",
"nodeType": "YulAssignment",
"src": "1665:16:2",
"value": {
"name": "value",
"nativeSrc": "1676:5:2",
"nodeType": "YulIdentifier",
"src": "1676:5:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "1665:7:2",
"nodeType": "YulIdentifier",
"src": "1665:7:2"
}
]
}
]
},
"name": "cleanup_t_int256",
"nativeSrc": "1611:76:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1637:5:2",
"nodeType": "YulTypedName",
"src": "1637:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "1647:7:2",
"nodeType": "YulTypedName",
"src": "1647:7:2",
"type": ""
}
],
"src": "1611:76:2"
},
{
"body": {
"nativeSrc": "1756:52:2",
"nodeType": "YulBlock",
"src": "1756:52:2",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "1773:3:2",
"nodeType": "YulIdentifier",
"src": "1773:3:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "1795:5:2",
"nodeType": "YulIdentifier",
"src": "1795:5:2"
}
],
"functionName": {
"name": "cleanup_t_int256",
"nativeSrc": "1778:16:2",
"nodeType": "YulIdentifier",
"src": "1778:16:2"
},
"nativeSrc": "1778:23:2",
"nodeType": "YulFunctionCall",
"src": "1778:23:2"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "1766:6:2",
"nodeType": "YulIdentifier",
"src": "1766:6:2"
},
"nativeSrc": "1766:36:2",
"nodeType": "YulFunctionCall",
"src": "1766:36:2"
},
"nativeSrc": "1766:36:2",
"nodeType": "YulExpressionStatement",
"src": "1766:36:2"
}
]
},
"name": "abi_encode_t_int256_to_t_int256_fromStack",
"nativeSrc": "1693:115:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1744:5:2",
"nodeType": "YulTypedName",
"src": "1744:5:2",
"type": ""
},
{
"name": "pos",
"nativeSrc": "1751:3:2",
"nodeType": "YulTypedName",
"src": "1751:3:2",
"type": ""
}
],
"src": "1693:115:2"
},
{
"body": {
"nativeSrc": "1910:122:2",
"nodeType": "YulBlock",
"src": "1910:122:2",
"statements": [
{
"nativeSrc": "1920:26:2",
"nodeType": "YulAssignment",
"src": "1920:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "1932:9:2",
"nodeType": "YulIdentifier",
"src": "1932:9:2"
},
{
"kind": "number",
"nativeSrc": "1943:2:2",
"nodeType": "YulLiteral",
"src": "1943:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1928:3:2",
"nodeType": "YulIdentifier",
"src": "1928:3:2"
},
"nativeSrc": "1928:18:2",
"nodeType": "YulFunctionCall",
"src": "1928:18:2"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "1920:4:2",
"nodeType": "YulIdentifier",
"src": "1920:4:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "1998:6:2",
"nodeType": "YulIdentifier",
"src": "1998:6:2"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "2011:9:2",
"nodeType": "YulIdentifier",
"src": "2011:9:2"
},
{
"kind": "number",
"nativeSrc": "2022:1:2",
"nodeType": "YulLiteral",
"src": "2022:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2007:3:2",
"nodeType": "YulIdentifier",
"src": "2007:3:2"
},
"nativeSrc": "2007:17:2",
"nodeType": "YulFunctionCall",
"src": "2007:17:2"
}
],
"functionName": {
"name": "abi_encode_t_int256_to_t_int256_fromStack",
"nativeSrc": "1956:41:2",
"nodeType": "YulIdentifier",
"src": "1956:41:2"
},
"nativeSrc": "1956:69:2",
"nodeType": "YulFunctionCall",
"src": "1956:69:2"
},
"nativeSrc": "1956:69:2",
"nodeType": "YulExpressionStatement",
"src": "1956:69:2"
}
]
},
"name": "abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed",
"nativeSrc": "1814:218:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "1882:9:2",
"nodeType": "YulTypedName",
"src": "1882:9:2",
"type": ""
},
{
"name": "value0",
"nativeSrc": "1894:6:2",
"nodeType": "YulTypedName",
"src": "1894:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "1905:4:2",
"nodeType": "YulTypedName",
"src": "1905:4:2",
"type": ""
}
],
"src": "1814:218:2"
},
{
"body": {
"nativeSrc": "2081:79:2",
"nodeType": "YulBlock",
"src": "2081:79:2",
"statements": [
{
"body": {
"nativeSrc": "2138:16:2",
"nodeType": "YulBlock",
"src": "2138:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "2147:1:2",
"nodeType": "YulLiteral",
"src": "2147:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "2150:1:2",
"nodeType": "YulLiteral",
"src": "2150:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "2140:6:2",
"nodeType": "YulIdentifier",
"src": "2140:6:2"
},
"nativeSrc": "2140:12:2",
"nodeType": "YulFunctionCall",
"src": "2140:12:2"
},
"nativeSrc": "2140:12:2",
"nodeType": "YulExpressionStatement",
"src": "2140:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "2104:5:2",
"nodeType": "YulIdentifier",
"src": "2104:5:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "2129:5:2",
"nodeType": "YulIdentifier",
"src": "2129:5:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "2111:17:2",
"nodeType": "YulIdentifier",
"src": "2111:17:2"
},
"nativeSrc": "2111:24:2",
"nodeType": "YulFunctionCall",
"src": "2111:24:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "2101:2:2",
"nodeType": "YulIdentifier",
"src": "2101:2:2"
},
"nativeSrc": "2101:35:2",
"nodeType": "YulFunctionCall",
"src": "2101:35:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "2094:6:2",
"nodeType": "YulIdentifier",
"src": "2094:6:2"
},
"nativeSrc": "2094:43:2",
"nodeType": "YulFunctionCall",
"src": "2094:43:2"
},
"nativeSrc": "2091:63:2",
"nodeType": "YulIf",
"src": "2091:63:2"
}
]
},
"name": "validator_revert_t_uint256",
"nativeSrc": "2038:122:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "2074:5:2",
"nodeType": "YulTypedName",
"src": "2074:5:2",
"type": ""
}
],
"src": "2038:122:2"
},
{
"body": {
"nativeSrc": "2218:87:2",
"nodeType": "YulBlock",
"src": "2218:87:2",
"statements": [
{
"nativeSrc": "2228:29:2",
"nodeType": "YulAssignment",
"src": "2228:29:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "2250:6:2",
"nodeType": "YulIdentifier",
"src": "2250:6:2"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "2237:12:2",
"nodeType": "YulIdentifier",
"src": "2237:12:2"
},
"nativeSrc": "2237:20:2",
"nodeType": "YulFunctionCall",
"src": "2237:20:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "2228:5:2",
"nodeType": "YulIdentifier",
"src": "2228:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "2293:5:2",
"nodeType": "YulIdentifier",
"src": "2293:5:2"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nativeSrc": "2266:26:2",
"nodeType": "YulIdentifier",
"src": "2266:26:2"
},
"nativeSrc": "2266:33:2",
"nodeType": "YulFunctionCall",
"src": "2266:33:2"
},
"nativeSrc": "2266:33:2",
"nodeType": "YulExpressionStatement",
"src": "2266:33:2"
}
]
},
"name": "abi_decode_t_uint256",
"nativeSrc": "2166:139:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "2196:6:2",
"nodeType": "YulTypedName",
"src": "2196:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "2204:3:2",
"nodeType": "YulTypedName",
"src": "2204:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "2212:5:2",
"nodeType": "YulTypedName",
"src": "2212:5:2",
"type": ""
}
],
"src": "2166:139:2"
},
{
"body": {
"nativeSrc": "2377:263:2",
"nodeType": "YulBlock",
"src": "2377:263:2",
"statements": [
{
"body": {
"nativeSrc": "2423:83:2",
"nodeType": "YulBlock",
"src": "2423:83:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "2425:77:2",
"nodeType": "YulIdentifier",
"src": "2425:77:2"
},
"nativeSrc": "2425:79:2",
"nodeType": "YulFunctionCall",
"src": "2425:79:2"
},
"nativeSrc": "2425:79:2",
"nodeType": "YulExpressionStatement",
"src": "2425:79:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "2398:7:2",
"nodeType": "YulIdentifier",
"src": "2398:7:2"
},
{
"name": "headStart",
"nativeSrc": "2407:9:2",
"nodeType": "YulIdentifier",
"src": "2407:9:2"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "2394:3:2",
"nodeType": "YulIdentifier",
"src": "2394:3:2"
},
"nativeSrc": "2394:23:2",
"nodeType": "YulFunctionCall",
"src": "2394:23:2"
},
{
"kind": "number",
"nativeSrc": "2419:2:2",
"nodeType": "YulLiteral",
"src": "2419:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "2390:3:2",
"nodeType": "YulIdentifier",
"src": "2390:3:2"
},
"nativeSrc": "2390:32:2",
"nodeType": "YulFunctionCall",
"src": "2390:32:2"
},
"nativeSrc": "2387:119:2",
"nodeType": "YulIf",
"src": "2387:119:2"
},
{
"nativeSrc": "2516:117:2",
"nodeType": "YulBlock",
"src": "2516:117:2",
"statements": [
{
"nativeSrc": "2531:15:2",
"nodeType": "YulVariableDeclaration",
"src": "2531:15:2",
"value": {
"kind": "number",
"nativeSrc": "2545:1:2",
"nodeType": "YulLiteral",
"src": "2545:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "2535:6:2",
"nodeType": "YulTypedName",
"src": "2535:6:2",
"type": ""
}
]
},
{
"nativeSrc": "2560:63:2",
"nodeType": "YulAssignment",
"src": "2560:63:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "2595:9:2",
"nodeType": "YulIdentifier",
"src": "2595:9:2"
},
{
"name": "offset",
"nativeSrc": "2606:6:2",
"nodeType": "YulIdentifier",
"src": "2606:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2591:3:2",
"nodeType": "YulIdentifier",
"src": "2591:3:2"
},
"nativeSrc": "2591:22:2",
"nodeType": "YulFunctionCall",
"src": "2591:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "2615:7:2",
"nodeType": "YulIdentifier",
"src": "2615:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nativeSrc": "2570:20:2",
"nodeType": "YulIdentifier",
"src": "2570:20:2"
},
"nativeSrc": "2570:53:2",
"nodeType": "YulFunctionCall",
"src": "2570:53:2"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "2560:6:2",
"nodeType": "YulIdentifier",
"src": "2560:6:2"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256",
"nativeSrc": "2311:329:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "2347:9:2",
"nodeType": "YulTypedName",
"src": "2347:9:2",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "2358:7:2",
"nodeType": "YulTypedName",
"src": "2358:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "2370:6:2",
"nodeType": "YulTypedName",
"src": "2370:6:2",
"type": ""
}
],
"src": "2311:329:2"
},
{
"body": {
"nativeSrc": "2742:73:2",
"nodeType": "YulBlock",
"src": "2742:73:2",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "2759:3:2",
"nodeType": "YulIdentifier",
"src": "2759:3:2"
},
{
"name": "length",
"nativeSrc": "2764:6:2",
"nodeType": "YulIdentifier",
"src": "2764:6:2"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "2752:6:2",
"nodeType": "YulIdentifier",
"src": "2752:6:2"
},
"nativeSrc": "2752:19:2",
"nodeType": "YulFunctionCall",
"src": "2752:19:2"
},
"nativeSrc": "2752:19:2",
"nodeType": "YulExpressionStatement",
"src": "2752:19:2"
},
{
"nativeSrc": "2780:29:2",
"nodeType": "YulAssignment",
"src": "2780:29:2",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "2799:3:2",
"nodeType": "YulIdentifier",
"src": "2799:3:2"
},
{
"kind": "number",
"nativeSrc": "2804:4:2",
"nodeType": "YulLiteral",
"src": "2804:4:2",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2795:3:2",
"nodeType": "YulIdentifier",
"src": "2795:3:2"
},
"nativeSrc": "2795:14:2",
"nodeType": "YulFunctionCall",
"src": "2795:14:2"
},
"variableNames": [
{
"name": "updated_pos",
"nativeSrc": "2780:11:2",
"nodeType": "YulIdentifier",
"src": "2780:11:2"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "2646:169:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "2714:3:2",
"nodeType": "YulTypedName",
"src": "2714:3:2",
"type": ""
},
{
"name": "length",
"nativeSrc": "2719:6:2",
"nodeType": "YulTypedName",
"src": "2719:6:2",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nativeSrc": "2730:11:2",
"nodeType": "YulTypedName",
"src": "2730:11:2",
"type": ""
}
],
"src": "2646:169:2"
},
{
"body": {
"nativeSrc": "2927:57:2",
"nodeType": "YulBlock",
"src": "2927:57:2",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "2949:6:2",
"nodeType": "YulIdentifier",
"src": "2949:6:2"
},
{
"kind": "number",
"nativeSrc": "2957:1:2",
"nodeType": "YulLiteral",
"src": "2957:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2945:3:2",
"nodeType": "YulIdentifier",
"src": "2945:3:2"
},
"nativeSrc": "2945:14:2",
"nodeType": "YulFunctionCall",
"src": "2945:14:2"
},
{
"hexValue": "53656e64206d6f726520455448",
"kind": "string",
"nativeSrc": "2961:15:2",
"nodeType": "YulLiteral",
"src": "2961:15:2",
"type": "",
"value": "Send more ETH"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "2938:6:2",
"nodeType": "YulIdentifier",
"src": "2938:6:2"
},
"nativeSrc": "2938:39:2",
"nodeType": "YulFunctionCall",
"src": "2938:39:2"
},
"nativeSrc": "2938:39:2",
"nodeType": "YulExpressionStatement",
"src": "2938:39:2"
}
]
},
"name": "store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8",
"nativeSrc": "2821:163:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "2919:6:2",
"nodeType": "YulTypedName",
"src": "2919:6:2",
"type": ""
}
],
"src": "2821:163:2"
},
{
"body": {
"nativeSrc": "3136:220:2",
"nodeType": "YulBlock",
"src": "3136:220:2",
"statements": [
{
"nativeSrc": "3146:74:2",
"nodeType": "YulAssignment",
"src": "3146:74:2",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "3212:3:2",
"nodeType": "YulIdentifier",
"src": "3212:3:2"
},
{
"kind": "number",
"nativeSrc": "3217:2:2",
"nodeType": "YulLiteral",
"src": "3217:2:2",
"type": "",
"value": "13"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "3153:58:2",
"nodeType": "YulIdentifier",
"src": "3153:58:2"
},
"nativeSrc": "3153:67:2",
"nodeType": "YulFunctionCall",
"src": "3153:67:2"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "3146:3:2",
"nodeType": "YulIdentifier",
"src": "3146:3:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "3318:3:2",
"nodeType": "YulIdentifier",
"src": "3318:3:2"
}
],
"functionName": {
"name": "store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8",
"nativeSrc": "3229:88:2",
"nodeType": "YulIdentifier",
"src": "3229:88:2"
},
"nativeSrc": "3229:93:2",
"nodeType": "YulFunctionCall",
"src": "3229:93:2"
},
"nativeSrc": "3229:93:2",
"nodeType": "YulExpressionStatement",
"src": "3229:93:2"
},
{
"nativeSrc": "3331:19:2",
"nodeType": "YulAssignment",
"src": "3331:19:2",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "3342:3:2",
"nodeType": "YulIdentifier",
"src": "3342:3:2"
},
{
"kind": "number",
"nativeSrc": "3347:2:2",
"nodeType": "YulLiteral",
"src": "3347:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3338:3:2",
"nodeType": "YulIdentifier",
"src": "3338:3:2"
},
"nativeSrc": "3338:12:2",
"nodeType": "YulFunctionCall",
"src": "3338:12:2"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "3331:3:2",
"nodeType": "YulIdentifier",
"src": "3331:3:2"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack",
"nativeSrc": "2990:366:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "3124:3:2",
"nodeType": "YulTypedName",
"src": "3124:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "3132:3:2",
"nodeType": "YulTypedName",
"src": "3132:3:2",
"type": ""
}
],
"src": "2990:366:2"
},
{
"body": {
"nativeSrc": "3533:248:2",
"nodeType": "YulBlock",
"src": "3533:248:2",
"statements": [
{
"nativeSrc": "3543:26:2",
"nodeType": "YulAssignment",
"src": "3543:26:2",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "3555:9:2",
"nodeType": "YulIdentifier",
"src": "3555:9:2"
},
{
"kind": "number",
"nativeSrc": "3566:2:2",
"nodeType": "YulLiteral",
"src": "3566:2:2",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3551:3:2",
"nodeType": "YulIdentifier",
"src": "3551:3:2"
},
"nativeSrc": "3551:18:2",
"nodeType": "YulFunctionCall",
"src": "3551:18:2"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "3543:4:2",
"nodeType": "YulIdentifier",
"src": "3543:4:2"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "3590:9:2",
"nodeType": "YulIdentifier",
"src": "3590:9:2"
},
{
"kind": "number",
"nativeSrc": "3601:1:2",
"nodeType": "YulLiteral",
"src": "3601:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3586:3:2",
"nodeType": "YulIdentifier",
"src": "3586:3:2"
},
"nativeSrc": "3586:17:2",
"nodeType": "YulFunctionCall",
"src": "3586:17:2"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "3609:4:2",
"nodeType": "YulIdentifier",
"src": "3609:4:2"
},
{
"name": "headStart",
"nativeSrc": "3615:9:2",
"nodeType": "YulIdentifier",
"src": "3615:9:2"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "3605:3:2",
"nodeType": "YulIdentifier",
"src": "3605:3:2"
},
"nativeSrc": "3605:20:2",
"nodeType": "YulFunctionCall",
"src": "3605:20:2"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "3579:6:2",
"nodeType": "YulIdentifier",
"src": "3579:6:2"
},
"nativeSrc": "3579:47:2",
"nodeType": "YulFunctionCall",
"src": "3579:47:2"
},
"nativeSrc": "3579:47:2",
"nodeType": "YulExpressionStatement",
"src": "3579:47:2"
},
{
"nativeSrc": "3635:139:2",
"nodeType": "YulAssignment",
"src": "3635:139:2",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "3769:4:2",
"nodeType": "YulIdentifier",
"src": "3769:4:2"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack",
"nativeSrc": "3643:124:2",
"nodeType": "YulIdentifier",
"src": "3643:124:2"
},
"nativeSrc": "3643:131:2",
"nodeType": "YulFunctionCall",
"src": "3643:131:2"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "3635:4:2",
"nodeType": "YulIdentifier",
"src": "3635:4:2"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "3362:419:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "3513:9:2",
"nodeType": "YulTypedName",
"src": "3513:9:2",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "3528:4:2",
"nodeType": "YulTypedName",
"src": "3528:4:2",
"type": ""
}
],
"src": "3362:419:2"
},
{
"body": {
"nativeSrc": "3831:61:2",
"nodeType": "YulBlock",
"src": "3831:61:2",
"statements": [
{
"nativeSrc": "3841:45:2",
"nodeType": "YulAssignment",
"src": "3841:45:2",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "3856:5:2",
"nodeType": "YulIdentifier",
"src": "3856:5:2"
},
{
"kind": "number",
"nativeSrc": "3863:22:2",
"nodeType": "YulLiteral",
"src": "3863:22:2",
"type": "",
"value": "0xffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nativeSrc": "3852:3:2",
"nodeType": "YulIdentifier",
"src": "3852:3:2"
},
"nativeSrc": "3852:34:2",
"nodeType": "YulFunctionCall",
"src": "3852:34:2"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "3841:7:2",
"nodeType": "YulIdentifier",
"src": "3841:7:2"
}
]
}
]
},
"name": "cleanup_t_uint80",
"nativeSrc": "3787:105:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "3813:5:2",
"nodeType": "YulTypedName",
"src": "3813:5:2",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "3823:7:2",
"nodeType": "YulTypedName",
"src": "3823:7:2",
"type": ""
}
],
"src": "3787:105:2"
},
{
"body": {
"nativeSrc": "3940:78:2",
"nodeType": "YulBlock",
"src": "3940:78:2",
"statements": [
{
"body": {
"nativeSrc": "3996:16:2",
"nodeType": "YulBlock",
"src": "3996:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "4005:1:2",
"nodeType": "YulLiteral",
"src": "4005:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "4008:1:2",
"nodeType": "YulLiteral",
"src": "4008:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "3998:6:2",
"nodeType": "YulIdentifier",
"src": "3998:6:2"
},
"nativeSrc": "3998:12:2",
"nodeType": "YulFunctionCall",
"src": "3998:12:2"
},
"nativeSrc": "3998:12:2",
"nodeType": "YulExpressionStatement",
"src": "3998:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "3963:5:2",
"nodeType": "YulIdentifier",
"src": "3963:5:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "3987:5:2",
"nodeType": "YulIdentifier",
"src": "3987:5:2"
}
],
"functionName": {
"name": "cleanup_t_uint80",
"nativeSrc": "3970:16:2",
"nodeType": "YulIdentifier",
"src": "3970:16:2"
},
"nativeSrc": "3970:23:2",
"nodeType": "YulFunctionCall",
"src": "3970:23:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "3960:2:2",
"nodeType": "YulIdentifier",
"src": "3960:2:2"
},
"nativeSrc": "3960:34:2",
"nodeType": "YulFunctionCall",
"src": "3960:34:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "3953:6:2",
"nodeType": "YulIdentifier",
"src": "3953:6:2"
},
"nativeSrc": "3953:42:2",
"nodeType": "YulFunctionCall",
"src": "3953:42:2"
},
"nativeSrc": "3950:62:2",
"nodeType": "YulIf",
"src": "3950:62:2"
}
]
},
"name": "validator_revert_t_uint80",
"nativeSrc": "3898:120:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "3933:5:2",
"nodeType": "YulTypedName",
"src": "3933:5:2",
"type": ""
}
],
"src": "3898:120:2"
},
{
"body": {
"nativeSrc": "4086:79:2",
"nodeType": "YulBlock",
"src": "4086:79:2",
"statements": [
{
"nativeSrc": "4096:22:2",
"nodeType": "YulAssignment",
"src": "4096:22:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "4111:6:2",
"nodeType": "YulIdentifier",
"src": "4111:6:2"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "4105:5:2",
"nodeType": "YulIdentifier",
"src": "4105:5:2"
},
"nativeSrc": "4105:13:2",
"nodeType": "YulFunctionCall",
"src": "4105:13:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "4096:5:2",
"nodeType": "YulIdentifier",
"src": "4096:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "4153:5:2",
"nodeType": "YulIdentifier",
"src": "4153:5:2"
}
],
"functionName": {
"name": "validator_revert_t_uint80",
"nativeSrc": "4127:25:2",
"nodeType": "YulIdentifier",
"src": "4127:25:2"
},
"nativeSrc": "4127:32:2",
"nodeType": "YulFunctionCall",
"src": "4127:32:2"
},
"nativeSrc": "4127:32:2",
"nodeType": "YulExpressionStatement",
"src": "4127:32:2"
}
]
},
"name": "abi_decode_t_uint80_fromMemory",
"nativeSrc": "4024:141:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "4064:6:2",
"nodeType": "YulTypedName",
"src": "4064:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "4072:3:2",
"nodeType": "YulTypedName",
"src": "4072:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "4080:5:2",
"nodeType": "YulTypedName",
"src": "4080:5:2",
"type": ""
}
],
"src": "4024:141:2"
},
{
"body": {
"nativeSrc": "4213:78:2",
"nodeType": "YulBlock",
"src": "4213:78:2",
"statements": [
{
"body": {
"nativeSrc": "4269:16:2",
"nodeType": "YulBlock",
"src": "4269:16:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "4278:1:2",
"nodeType": "YulLiteral",
"src": "4278:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "4281:1:2",
"nodeType": "YulLiteral",
"src": "4281:1:2",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "4271:6:2",
"nodeType": "YulIdentifier",
"src": "4271:6:2"
},
"nativeSrc": "4271:12:2",
"nodeType": "YulFunctionCall",
"src": "4271:12:2"
},
"nativeSrc": "4271:12:2",
"nodeType": "YulExpressionStatement",
"src": "4271:12:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "4236:5:2",
"nodeType": "YulIdentifier",
"src": "4236:5:2"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "4260:5:2",
"nodeType": "YulIdentifier",
"src": "4260:5:2"
}
],
"functionName": {
"name": "cleanup_t_int256",
"nativeSrc": "4243:16:2",
"nodeType": "YulIdentifier",
"src": "4243:16:2"
},
"nativeSrc": "4243:23:2",
"nodeType": "YulFunctionCall",
"src": "4243:23:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "4233:2:2",
"nodeType": "YulIdentifier",
"src": "4233:2:2"
},
"nativeSrc": "4233:34:2",
"nodeType": "YulFunctionCall",
"src": "4233:34:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "4226:6:2",
"nodeType": "YulIdentifier",
"src": "4226:6:2"
},
"nativeSrc": "4226:42:2",
"nodeType": "YulFunctionCall",
"src": "4226:42:2"
},
"nativeSrc": "4223:62:2",
"nodeType": "YulIf",
"src": "4223:62:2"
}
]
},
"name": "validator_revert_t_int256",
"nativeSrc": "4171:120:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "4206:5:2",
"nodeType": "YulTypedName",
"src": "4206:5:2",
"type": ""
}
],
"src": "4171:120:2"
},
{
"body": {
"nativeSrc": "4359:79:2",
"nodeType": "YulBlock",
"src": "4359:79:2",
"statements": [
{
"nativeSrc": "4369:22:2",
"nodeType": "YulAssignment",
"src": "4369:22:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "4384:6:2",
"nodeType": "YulIdentifier",
"src": "4384:6:2"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "4378:5:2",
"nodeType": "YulIdentifier",
"src": "4378:5:2"
},
"nativeSrc": "4378:13:2",
"nodeType": "YulFunctionCall",
"src": "4378:13:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "4369:5:2",
"nodeType": "YulIdentifier",
"src": "4369:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "4426:5:2",
"nodeType": "YulIdentifier",
"src": "4426:5:2"
}
],
"functionName": {
"name": "validator_revert_t_int256",
"nativeSrc": "4400:25:2",
"nodeType": "YulIdentifier",
"src": "4400:25:2"
},
"nativeSrc": "4400:32:2",
"nodeType": "YulFunctionCall",
"src": "4400:32:2"
},
"nativeSrc": "4400:32:2",
"nodeType": "YulExpressionStatement",
"src": "4400:32:2"
}
]
},
"name": "abi_decode_t_int256_fromMemory",
"nativeSrc": "4297:141:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "4337:6:2",
"nodeType": "YulTypedName",
"src": "4337:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "4345:3:2",
"nodeType": "YulTypedName",
"src": "4345:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "4353:5:2",
"nodeType": "YulTypedName",
"src": "4353:5:2",
"type": ""
}
],
"src": "4297:141:2"
},
{
"body": {
"nativeSrc": "4507:80:2",
"nodeType": "YulBlock",
"src": "4507:80:2",
"statements": [
{
"nativeSrc": "4517:22:2",
"nodeType": "YulAssignment",
"src": "4517:22:2",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "4532:6:2",
"nodeType": "YulIdentifier",
"src": "4532:6:2"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "4526:5:2",
"nodeType": "YulIdentifier",
"src": "4526:5:2"
},
"nativeSrc": "4526:13:2",
"nodeType": "YulFunctionCall",
"src": "4526:13:2"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "4517:5:2",
"nodeType": "YulIdentifier",
"src": "4517:5:2"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "4575:5:2",
"nodeType": "YulIdentifier",
"src": "4575:5:2"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nativeSrc": "4548:26:2",
"nodeType": "YulIdentifier",
"src": "4548:26:2"
},
"nativeSrc": "4548:33:2",
"nodeType": "YulFunctionCall",
"src": "4548:33:2"
},
"nativeSrc": "4548:33:2",
"nodeType": "YulExpressionStatement",
"src": "4548:33:2"
}
]
},
"name": "abi_decode_t_uint256_fromMemory",
"nativeSrc": "4444:143:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "4485:6:2",
"nodeType": "YulTypedName",
"src": "4485:6:2",
"type": ""
},
{
"name": "end",
"nativeSrc": "4493:3:2",
"nodeType": "YulTypedName",
"src": "4493:3:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "4501:5:2",
"nodeType": "YulTypedName",
"src": "4501:5:2",
"type": ""
}
],
"src": "4444:143:2"
},
{
"body": {
"nativeSrc": "4735:829:2",
"nodeType": "YulBlock",
"src": "4735:829:2",
"statements": [
{
"body": {
"nativeSrc": "4782:83:2",
"nodeType": "YulBlock",
"src": "4782:83:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "4784:77:2",
"nodeType": "YulIdentifier",
"src": "4784:77:2"
},
"nativeSrc": "4784:79:2",
"nodeType": "YulFunctionCall",
"src": "4784:79:2"
},
"nativeSrc": "4784:79:2",
"nodeType": "YulExpressionStatement",
"src": "4784:79:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "4756:7:2",
"nodeType": "YulIdentifier",
"src": "4756:7:2"
},
{
"name": "headStart",
"nativeSrc": "4765:9:2",
"nodeType": "YulIdentifier",
"src": "4765:9:2"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "4752:3:2",
"nodeType": "YulIdentifier",
"src": "4752:3:2"
},
"nativeSrc": "4752:23:2",
"nodeType": "YulFunctionCall",
"src": "4752:23:2"
},
{
"kind": "number",
"nativeSrc": "4777:3:2",
"nodeType": "YulLiteral",
"src": "4777:3:2",
"type": "",
"value": "160"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "4748:3:2",
"nodeType": "YulIdentifier",
"src": "4748:3:2"
},
"nativeSrc": "4748:33:2",
"nodeType": "YulFunctionCall",
"src": "4748:33:2"
},
"nativeSrc": "4745:120:2",
"nodeType": "YulIf",
"src": "4745:120:2"
},
{
"nativeSrc": "4875:127:2",
"nodeType": "YulBlock",
"src": "4875:127:2",
"statements": [
{
"nativeSrc": "4890:15:2",
"nodeType": "YulVariableDeclaration",
"src": "4890:15:2",
"value": {
"kind": "number",
"nativeSrc": "4904:1:2",
"nodeType": "YulLiteral",
"src": "4904:1:2",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "4894:6:2",
"nodeType": "YulTypedName",
"src": "4894:6:2",
"type": ""
}
]
},
{
"nativeSrc": "4919:73:2",
"nodeType": "YulAssignment",
"src": "4919:73:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "4964:9:2",
"nodeType": "YulIdentifier",
"src": "4964:9:2"
},
{
"name": "offset",
"nativeSrc": "4975:6:2",
"nodeType": "YulIdentifier",
"src": "4975:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "4960:3:2",
"nodeType": "YulIdentifier",
"src": "4960:3:2"
},
"nativeSrc": "4960:22:2",
"nodeType": "YulFunctionCall",
"src": "4960:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "4984:7:2",
"nodeType": "YulIdentifier",
"src": "4984:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint80_fromMemory",
"nativeSrc": "4929:30:2",
"nodeType": "YulIdentifier",
"src": "4929:30:2"
},
"nativeSrc": "4929:63:2",
"nodeType": "YulFunctionCall",
"src": "4929:63:2"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "4919:6:2",
"nodeType": "YulIdentifier",
"src": "4919:6:2"
}
]
}
]
},
{
"nativeSrc": "5012:128:2",
"nodeType": "YulBlock",
"src": "5012:128:2",
"statements": [
{
"nativeSrc": "5027:16:2",
"nodeType": "YulVariableDeclaration",
"src": "5027:16:2",
"value": {
"kind": "number",
"nativeSrc": "5041:2:2",
"nodeType": "YulLiteral",
"src": "5041:2:2",
"type": "",
"value": "32"
},
"variables": [
{
"name": "offset",
"nativeSrc": "5031:6:2",
"nodeType": "YulTypedName",
"src": "5031:6:2",
"type": ""
}
]
},
{
"nativeSrc": "5057:73:2",
"nodeType": "YulAssignment",
"src": "5057:73:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5102:9:2",
"nodeType": "YulIdentifier",
"src": "5102:9:2"
},
{
"name": "offset",
"nativeSrc": "5113:6:2",
"nodeType": "YulIdentifier",
"src": "5113:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5098:3:2",
"nodeType": "YulIdentifier",
"src": "5098:3:2"
},
"nativeSrc": "5098:22:2",
"nodeType": "YulFunctionCall",
"src": "5098:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "5122:7:2",
"nodeType": "YulIdentifier",
"src": "5122:7:2"
}
],
"functionName": {
"name": "abi_decode_t_int256_fromMemory",
"nativeSrc": "5067:30:2",
"nodeType": "YulIdentifier",
"src": "5067:30:2"
},
"nativeSrc": "5067:63:2",
"nodeType": "YulFunctionCall",
"src": "5067:63:2"
},
"variableNames": [
{
"name": "value1",
"nativeSrc": "5057:6:2",
"nodeType": "YulIdentifier",
"src": "5057:6:2"
}
]
}
]
},
{
"nativeSrc": "5150:129:2",
"nodeType": "YulBlock",
"src": "5150:129:2",
"statements": [
{
"nativeSrc": "5165:16:2",
"nodeType": "YulVariableDeclaration",
"src": "5165:16:2",
"value": {
"kind": "number",
"nativeSrc": "5179:2:2",
"nodeType": "YulLiteral",
"src": "5179:2:2",
"type": "",
"value": "64"
},
"variables": [
{
"name": "offset",
"nativeSrc": "5169:6:2",
"nodeType": "YulTypedName",
"src": "5169:6:2",
"type": ""
}
]
},
{
"nativeSrc": "5195:74:2",
"nodeType": "YulAssignment",
"src": "5195:74:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5241:9:2",
"nodeType": "YulIdentifier",
"src": "5241:9:2"
},
{
"name": "offset",
"nativeSrc": "5252:6:2",
"nodeType": "YulIdentifier",
"src": "5252:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5237:3:2",
"nodeType": "YulIdentifier",
"src": "5237:3:2"
},
"nativeSrc": "5237:22:2",
"nodeType": "YulFunctionCall",
"src": "5237:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "5261:7:2",
"nodeType": "YulIdentifier",
"src": "5261:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint256_fromMemory",
"nativeSrc": "5205:31:2",
"nodeType": "YulIdentifier",
"src": "5205:31:2"
},
"nativeSrc": "5205:64:2",
"nodeType": "YulFunctionCall",
"src": "5205:64:2"
},
"variableNames": [
{
"name": "value2",
"nativeSrc": "5195:6:2",
"nodeType": "YulIdentifier",
"src": "5195:6:2"
}
]
}
]
},
{
"nativeSrc": "5289:129:2",
"nodeType": "YulBlock",
"src": "5289:129:2",
"statements": [
{
"nativeSrc": "5304:16:2",
"nodeType": "YulVariableDeclaration",
"src": "5304:16:2",
"value": {
"kind": "number",
"nativeSrc": "5318:2:2",
"nodeType": "YulLiteral",
"src": "5318:2:2",
"type": "",
"value": "96"
},
"variables": [
{
"name": "offset",
"nativeSrc": "5308:6:2",
"nodeType": "YulTypedName",
"src": "5308:6:2",
"type": ""
}
]
},
{
"nativeSrc": "5334:74:2",
"nodeType": "YulAssignment",
"src": "5334:74:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5380:9:2",
"nodeType": "YulIdentifier",
"src": "5380:9:2"
},
{
"name": "offset",
"nativeSrc": "5391:6:2",
"nodeType": "YulIdentifier",
"src": "5391:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5376:3:2",
"nodeType": "YulIdentifier",
"src": "5376:3:2"
},
"nativeSrc": "5376:22:2",
"nodeType": "YulFunctionCall",
"src": "5376:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "5400:7:2",
"nodeType": "YulIdentifier",
"src": "5400:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint256_fromMemory",
"nativeSrc": "5344:31:2",
"nodeType": "YulIdentifier",
"src": "5344:31:2"
},
"nativeSrc": "5344:64:2",
"nodeType": "YulFunctionCall",
"src": "5344:64:2"
},
"variableNames": [
{
"name": "value3",
"nativeSrc": "5334:6:2",
"nodeType": "YulIdentifier",
"src": "5334:6:2"
}
]
}
]
},
{
"nativeSrc": "5428:129:2",
"nodeType": "YulBlock",
"src": "5428:129:2",
"statements": [
{
"nativeSrc": "5443:17:2",
"nodeType": "YulVariableDeclaration",
"src": "5443:17:2",
"value": {
"kind": "number",
"nativeSrc": "5457:3:2",
"nodeType": "YulLiteral",
"src": "5457:3:2",
"type": "",
"value": "128"
},
"variables": [
{
"name": "offset",
"nativeSrc": "5447:6:2",
"nodeType": "YulTypedName",
"src": "5447:6:2",
"type": ""
}
]
},
{
"nativeSrc": "5474:73:2",
"nodeType": "YulAssignment",
"src": "5474:73:2",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5519:9:2",
"nodeType": "YulIdentifier",
"src": "5519:9:2"
},
{
"name": "offset",
"nativeSrc": "5530:6:2",
"nodeType": "YulIdentifier",
"src": "5530:6:2"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5515:3:2",
"nodeType": "YulIdentifier",
"src": "5515:3:2"
},
"nativeSrc": "5515:22:2",
"nodeType": "YulFunctionCall",
"src": "5515:22:2"
},
{
"name": "dataEnd",
"nativeSrc": "5539:7:2",
"nodeType": "YulIdentifier",
"src": "5539:7:2"
}
],
"functionName": {
"name": "abi_decode_t_uint80_fromMemory",
"nativeSrc": "5484:30:2",
"nodeType": "YulIdentifier",
"src": "5484:30:2"
},
"nativeSrc": "5484:63:2",
"nodeType": "YulFunctionCall",
"src": "5484:63:2"
},
"variableNames": [
{
"name": "value4",
"nativeSrc": "5474:6:2",
"nodeType": "YulIdentifier",
"src": "5474:6:2"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory",
"nativeSrc": "4593:971:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "4673:9:2",
"nodeType": "YulTypedName",
"src": "4673:9:2",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "4684:7:2",
"nodeType": "YulTypedName",
"src": "4684:7:2",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "4696:6:2",
"nodeType": "YulTypedName",
"src": "4696:6:2",
"type": ""
},
{
"name": "value1",
"nativeSrc": "4704:6:2",
"nodeType": "YulTypedName",
"src": "4704:6:2",
"type": ""
},
{
"name": "value2",
"nativeSrc": "4712:6:2",
"nodeType": "YulTypedName",
"src": "4712:6:2",
"type": ""
},
{
"name": "value3",
"nativeSrc": "4720:6:2",
"nodeType": "YulTypedName",
"src": "4720:6:2",
"type": ""
},
{
"name": "value4",
"nativeSrc": "4728:6:2",
"nodeType": "YulTypedName",
"src": "4728:6:2",
"type": ""
}
],
"src": "4593:971:2"
},
{
"body": {
"nativeSrc": "5598:152:2",
"nodeType": "YulBlock",
"src": "5598:152:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "5615:1:2",
"nodeType": "YulLiteral",
"src": "5615:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "5618:77:2",
"nodeType": "YulLiteral",
"src": "5618:77:2",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "5608:6:2",
"nodeType": "YulIdentifier",
"src": "5608:6:2"
},
"nativeSrc": "5608:88:2",
"nodeType": "YulFunctionCall",
"src": "5608:88:2"
},
"nativeSrc": "5608:88:2",
"nodeType": "YulExpressionStatement",
"src": "5608:88:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "5712:1:2",
"nodeType": "YulLiteral",
"src": "5712:1:2",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "5715:4:2",
"nodeType": "YulLiteral",
"src": "5715:4:2",
"type": "",
"value": "0x11"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "5705:6:2",
"nodeType": "YulIdentifier",
"src": "5705:6:2"
},
"nativeSrc": "5705:15:2",
"nodeType": "YulFunctionCall",
"src": "5705:15:2"
},
"nativeSrc": "5705:15:2",
"nodeType": "YulExpressionStatement",
"src": "5705:15:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "5736:1:2",
"nodeType": "YulLiteral",
"src": "5736:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "5739:4:2",
"nodeType": "YulLiteral",
"src": "5739:4:2",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "5729:6:2",
"nodeType": "YulIdentifier",
"src": "5729:6:2"
},
"nativeSrc": "5729:15:2",
"nodeType": "YulFunctionCall",
"src": "5729:15:2"
},
"nativeSrc": "5729:15:2",
"nodeType": "YulExpressionStatement",
"src": "5729:15:2"
}
]
},
"name": "panic_error_0x11",
"nativeSrc": "5570:180:2",
"nodeType": "YulFunctionDefinition",
"src": "5570:180:2"
},
{
"body": {
"nativeSrc": "5804:362:2",
"nodeType": "YulBlock",
"src": "5804:362:2",
"statements": [
{
"nativeSrc": "5814:25:2",
"nodeType": "YulAssignment",
"src": "5814:25:2",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "5837:1:2",
"nodeType": "YulIdentifier",
"src": "5837:1:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "5819:17:2",
"nodeType": "YulIdentifier",
"src": "5819:17:2"
},
"nativeSrc": "5819:20:2",
"nodeType": "YulFunctionCall",
"src": "5819:20:2"
},
"variableNames": [
{
"name": "x",
"nativeSrc": "5814:1:2",
"nodeType": "YulIdentifier",
"src": "5814:1:2"
}
]
},
{
"nativeSrc": "5848:25:2",
"nodeType": "YulAssignment",
"src": "5848:25:2",
"value": {
"arguments": [
{
"name": "y",
"nativeSrc": "5871:1:2",
"nodeType": "YulIdentifier",
"src": "5871:1:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "5853:17:2",
"nodeType": "YulIdentifier",
"src": "5853:17:2"
},
"nativeSrc": "5853:20:2",
"nodeType": "YulFunctionCall",
"src": "5853:20:2"
},
"variableNames": [
{
"name": "y",
"nativeSrc": "5848:1:2",
"nodeType": "YulIdentifier",
"src": "5848:1:2"
}
]
},
{
"nativeSrc": "5882:28:2",
"nodeType": "YulVariableDeclaration",
"src": "5882:28:2",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "5905:1:2",
"nodeType": "YulIdentifier",
"src": "5905:1:2"
},
{
"name": "y",
"nativeSrc": "5908:1:2",
"nodeType": "YulIdentifier",
"src": "5908:1:2"
}
],
"functionName": {
"name": "mul",
"nativeSrc": "5901:3:2",
"nodeType": "YulIdentifier",
"src": "5901:3:2"
},
"nativeSrc": "5901:9:2",
"nodeType": "YulFunctionCall",
"src": "5901:9:2"
},
"variables": [
{
"name": "product_raw",
"nativeSrc": "5886:11:2",
"nodeType": "YulTypedName",
"src": "5886:11:2",
"type": ""
}
]
},
{
"nativeSrc": "5919:41:2",
"nodeType": "YulAssignment",
"src": "5919:41:2",
"value": {
"arguments": [
{
"name": "product_raw",
"nativeSrc": "5948:11:2",
"nodeType": "YulIdentifier",
"src": "5948:11:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "5930:17:2",
"nodeType": "YulIdentifier",
"src": "5930:17:2"
},
"nativeSrc": "5930:30:2",
"nodeType": "YulFunctionCall",
"src": "5930:30:2"
},
"variableNames": [
{
"name": "product",
"nativeSrc": "5919:7:2",
"nodeType": "YulIdentifier",
"src": "5919:7:2"
}
]
},
{
"body": {
"nativeSrc": "6137:22:2",
"nodeType": "YulBlock",
"src": "6137:22:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nativeSrc": "6139:16:2",
"nodeType": "YulIdentifier",
"src": "6139:16:2"
},
"nativeSrc": "6139:18:2",
"nodeType": "YulFunctionCall",
"src": "6139:18:2"
},
"nativeSrc": "6139:18:2",
"nodeType": "YulExpressionStatement",
"src": "6139:18:2"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "x",
"nativeSrc": "6070:1:2",
"nodeType": "YulIdentifier",
"src": "6070:1:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "6063:6:2",
"nodeType": "YulIdentifier",
"src": "6063:6:2"
},
"nativeSrc": "6063:9:2",
"nodeType": "YulFunctionCall",
"src": "6063:9:2"
},
{
"arguments": [
{
"name": "y",
"nativeSrc": "6093:1:2",
"nodeType": "YulIdentifier",
"src": "6093:1:2"
},
{
"arguments": [
{
"name": "product",
"nativeSrc": "6100:7:2",
"nodeType": "YulIdentifier",
"src": "6100:7:2"
},
{
"name": "x",
"nativeSrc": "6109:1:2",
"nodeType": "YulIdentifier",
"src": "6109:1:2"
}
],
"functionName": {
"name": "div",
"nativeSrc": "6096:3:2",
"nodeType": "YulIdentifier",
"src": "6096:3:2"
},
"nativeSrc": "6096:15:2",
"nodeType": "YulFunctionCall",
"src": "6096:15:2"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "6090:2:2",
"nodeType": "YulIdentifier",
"src": "6090:2:2"
},
"nativeSrc": "6090:22:2",
"nodeType": "YulFunctionCall",
"src": "6090:22:2"
}
],
"functionName": {
"name": "or",
"nativeSrc": "6043:2:2",
"nodeType": "YulIdentifier",
"src": "6043:2:2"
},
"nativeSrc": "6043:83:2",
"nodeType": "YulFunctionCall",
"src": "6043:83:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "6023:6:2",
"nodeType": "YulIdentifier",
"src": "6023:6:2"
},
"nativeSrc": "6023:113:2",
"nodeType": "YulFunctionCall",
"src": "6023:113:2"
},
"nativeSrc": "6020:139:2",
"nodeType": "YulIf",
"src": "6020:139:2"
}
]
},
"name": "checked_mul_t_uint256",
"nativeSrc": "5756:410:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nativeSrc": "5787:1:2",
"nodeType": "YulTypedName",
"src": "5787:1:2",
"type": ""
},
{
"name": "y",
"nativeSrc": "5790:1:2",
"nodeType": "YulTypedName",
"src": "5790:1:2",
"type": ""
}
],
"returnVariables": [
{
"name": "product",
"nativeSrc": "5796:7:2",
"nodeType": "YulTypedName",
"src": "5796:7:2",
"type": ""
}
],
"src": "5756:410:2"
},
{
"body": {
"nativeSrc": "6200:152:2",
"nodeType": "YulBlock",
"src": "6200:152:2",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6217:1:2",
"nodeType": "YulLiteral",
"src": "6217:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "6220:77:2",
"nodeType": "YulLiteral",
"src": "6220:77:2",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "6210:6:2",
"nodeType": "YulIdentifier",
"src": "6210:6:2"
},
"nativeSrc": "6210:88:2",
"nodeType": "YulFunctionCall",
"src": "6210:88:2"
},
"nativeSrc": "6210:88:2",
"nodeType": "YulExpressionStatement",
"src": "6210:88:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6314:1:2",
"nodeType": "YulLiteral",
"src": "6314:1:2",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "6317:4:2",
"nodeType": "YulLiteral",
"src": "6317:4:2",
"type": "",
"value": "0x12"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "6307:6:2",
"nodeType": "YulIdentifier",
"src": "6307:6:2"
},
"nativeSrc": "6307:15:2",
"nodeType": "YulFunctionCall",
"src": "6307:15:2"
},
"nativeSrc": "6307:15:2",
"nodeType": "YulExpressionStatement",
"src": "6307:15:2"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6338:1:2",
"nodeType": "YulLiteral",
"src": "6338:1:2",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "6341:4:2",
"nodeType": "YulLiteral",
"src": "6341:4:2",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "6331:6:2",
"nodeType": "YulIdentifier",
"src": "6331:6:2"
},
"nativeSrc": "6331:15:2",
"nodeType": "YulFunctionCall",
"src": "6331:15:2"
},
"nativeSrc": "6331:15:2",
"nodeType": "YulExpressionStatement",
"src": "6331:15:2"
}
]
},
"name": "panic_error_0x12",
"nativeSrc": "6172:180:2",
"nodeType": "YulFunctionDefinition",
"src": "6172:180:2"
},
{
"body": {
"nativeSrc": "6400:143:2",
"nodeType": "YulBlock",
"src": "6400:143:2",
"statements": [
{
"nativeSrc": "6410:25:2",
"nodeType": "YulAssignment",
"src": "6410:25:2",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "6433:1:2",
"nodeType": "YulIdentifier",
"src": "6433:1:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "6415:17:2",
"nodeType": "YulIdentifier",
"src": "6415:17:2"
},
"nativeSrc": "6415:20:2",
"nodeType": "YulFunctionCall",
"src": "6415:20:2"
},
"variableNames": [
{
"name": "x",
"nativeSrc": "6410:1:2",
"nodeType": "YulIdentifier",
"src": "6410:1:2"
}
]
},
{
"nativeSrc": "6444:25:2",
"nodeType": "YulAssignment",
"src": "6444:25:2",
"value": {
"arguments": [
{
"name": "y",
"nativeSrc": "6467:1:2",
"nodeType": "YulIdentifier",
"src": "6467:1:2"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "6449:17:2",
"nodeType": "YulIdentifier",
"src": "6449:17:2"
},
"nativeSrc": "6449:20:2",
"nodeType": "YulFunctionCall",
"src": "6449:20:2"
},
"variableNames": [
{
"name": "y",
"nativeSrc": "6444:1:2",
"nodeType": "YulIdentifier",
"src": "6444:1:2"
}
]
},
{
"body": {
"nativeSrc": "6491:22:2",
"nodeType": "YulBlock",
"src": "6491:22:2",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x12",
"nativeSrc": "6493:16:2",
"nodeType": "YulIdentifier",
"src": "6493:16:2"
},
"nativeSrc": "6493:18:2",
"nodeType": "YulFunctionCall",
"src": "6493:18:2"
},
"nativeSrc": "6493:18:2",
"nodeType": "YulExpressionStatement",
"src": "6493:18:2"
}
]
},
"condition": {
"arguments": [
{
"name": "y",
"nativeSrc": "6488:1:2",
"nodeType": "YulIdentifier",
"src": "6488:1:2"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "6481:6:2",
"nodeType": "YulIdentifier",
"src": "6481:6:2"
},
"nativeSrc": "6481:9:2",
"nodeType": "YulFunctionCall",
"src": "6481:9:2"
},
"nativeSrc": "6478:35:2",
"nodeType": "YulIf",
"src": "6478:35:2"
},
{
"nativeSrc": "6523:14:2",
"nodeType": "YulAssignment",
"src": "6523:14:2",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "6532:1:2",
"nodeType": "YulIdentifier",
"src": "6532:1:2"
},
{
"name": "y",
"nativeSrc": "6535:1:2",
"nodeType": "YulIdentifier",
"src": "6535:1:2"
}
],
"functionName": {
"name": "div",
"nativeSrc": "6528:3:2",
"nodeType": "YulIdentifier",
"src": "6528:3:2"
},
"nativeSrc": "6528:9:2",
"nodeType": "YulFunctionCall",
"src": "6528:9:2"
},
"variableNames": [
{
"name": "r",
"nativeSrc": "6523:1:2",
"nodeType": "YulIdentifier",
"src": "6523:1:2"
}
]
}
]
},
"name": "checked_div_t_uint256",
"nativeSrc": "6358:185:2",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nativeSrc": "6389:1:2",
"nodeType": "YulTypedName",
"src": "6389:1:2",
"type": ""
},
{
"name": "y",
"nativeSrc": "6392:1:2",
"nodeType": "YulTypedName",
"src": "6392:1:2",
"type": ""
}
],
"returnVariables": [
{
"name": "r",
"nativeSrc": "6398:1:2",
"nodeType": "YulTypedName",
"src": "6398:1:2",
"type": ""
}
],
"src": "6358:185:2"
}
]
},
"contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_int256(value) -> cleaned {\n cleaned := value\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 validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8(memPtr) {\n\n mstore(add(memPtr, 0), \"Send more ETH\")\n\n }\n\n function abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 13)\n store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function cleanup_t_uint80(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffff)\n }\n\n function validator_revert_t_uint80(value) {\n if iszero(eq(value, cleanup_t_uint80(value))) { revert(0, 0) }\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 validator_revert_t_int256(value) {\n if iszero(eq(value, cleanup_t_int256(value))) { revert(0, 0) }\n }\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_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 panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n let product_raw := mul(x, y)\n product := cleanup_t_uint256(product_raw)\n\n // overflow, if x != 0 and y != product/x\n if iszero(\n or(\n iszero(x),\n eq(y, div(product, x))\n )\n ) { panic_error_0x11() }\n\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function checked_div_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n\n r := div(x, y)\n }\n\n}\n",
"id": 2,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "60806040526004361061003e575f3560e01c80639f883a0514610042578063b60d42881461007e578063bea4dfb514610088578063c086381e146100b2575b5f80fd5b34801561004d575f80fd5b506100686004803603810190610063919061027b565b6100ee565b60405161007591906102be565b60405180910390f35b610086610102565b005b348015610093575f80fd5b5061009c610151565b6040516100a991906102ef565b60405180910390f35b3480156100bd575f80fd5b506100d860048036038101906100d39190610332565b6101ee565b6040516100e591906102be565b60405180910390f35b5f602052805f5260405f205f915090505481565b60025461010e346101ee565b101561014f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610146906103b7565b60405180910390fd5b565b5f8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156101bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101e19190610452565b5050509150508091505090565b5f806101f8610151565b90506305f5e100818461020b91906104f6565b6102159190610564565b915050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61024a82610221565b9050919050565b61025a81610240565b8114610264575f80fd5b50565b5f8135905061027581610251565b92915050565b5f602082840312156102905761028f61021d565b5b5f61029d84828501610267565b91505092915050565b5f819050919050565b6102b8816102a6565b82525050565b5f6020820190506102d15f8301846102af565b92915050565b5f819050919050565b6102e9816102d7565b82525050565b5f6020820190506103025f8301846102e0565b92915050565b610311816102a6565b811461031b575f80fd5b50565b5f8135905061032c81610308565b92915050565b5f602082840312156103475761034661021d565b5b5f6103548482850161031e565b91505092915050565b5f82825260208201905092915050565b7f53656e64206d6f726520455448000000000000000000000000000000000000005f82015250565b5f6103a1600d8361035d565b91506103ac8261036d565b602082019050919050565b5f6020820190508181035f8301526103ce81610395565b9050919050565b5f69ffffffffffffffffffff82169050919050565b6103f3816103d5565b81146103fd575f80fd5b50565b5f8151905061040e816103ea565b92915050565b61041d816102d7565b8114610427575f80fd5b50565b5f8151905061043881610414565b92915050565b5f8151905061044c81610308565b92915050565b5f805f805f60a0868803121561046b5761046a61021d565b5b5f61047888828901610400565b95505060206104898882890161042a565b945050604061049a8882890161043e565b93505060606104ab8882890161043e565b92505060806104bc88828901610400565b9150509295509295909350565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610500826102a6565b915061050b836102a6565b9250828202610519816102a6565b915082820484148315176105305761052f6104c9565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61056e826102a6565b9150610579836102a6565b92508261058957610588610537565b5b82820490509291505056fea26469706673582212204929cb025ea16aba87187dd39a401e222cdcb9a9ccd48b6b3dfaef9a091ec05664736f6c634300081a0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x3E JUMPI PUSH0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9F883A05 EQ PUSH2 0x42 JUMPI DUP1 PUSH4 0xB60D4288 EQ PUSH2 0x7E JUMPI DUP1 PUSH4 0xBEA4DFB5 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0xC086381E EQ PUSH2 0xB2 JUMPI JUMPDEST PUSH0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4D JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0x68 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x63 SWAP2 SWAP1 PUSH2 0x27B JUMP JUMPDEST PUSH2 0xEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x75 SWAP2 SWAP1 PUSH2 0x2BE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x86 PUSH2 0x102 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x93 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0x9C PUSH2 0x151 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA9 SWAP2 SWAP1 PUSH2 0x2EF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBD JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0xD8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD3 SWAP2 SWAP1 PUSH2 0x332 JUMP JUMPDEST PUSH2 0x1EE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x2BE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH0 PUSH1 0x20 MSTORE DUP1 PUSH0 MSTORE PUSH1 0x40 PUSH0 KECCAK256 PUSH0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH2 0x10E CALLVALUE PUSH2 0x1EE JUMP JUMPDEST LT ISZERO PUSH2 0x14F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x146 SWAP1 PUSH2 0x3B7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH0 DUP1 PUSH1 0x1 PUSH0 SWAP1 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 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1BD JUMPI RETURNDATASIZE PUSH0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH0 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 0x1E1 SWAP2 SWAP1 PUSH2 0x452 JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x1F8 PUSH2 0x151 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP2 DUP5 PUSH2 0x20B SWAP2 SWAP1 PUSH2 0x4F6 JUMP JUMPDEST PUSH2 0x215 SWAP2 SWAP1 PUSH2 0x564 JUMP JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x24A DUP3 PUSH2 0x221 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25A DUP2 PUSH2 0x240 JUMP JUMPDEST DUP2 EQ PUSH2 0x264 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x275 DUP2 PUSH2 0x251 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x290 JUMPI PUSH2 0x28F PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x29D DUP5 DUP3 DUP6 ADD PUSH2 0x267 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2B8 DUP2 PUSH2 0x2A6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2D1 PUSH0 DUP4 ADD DUP5 PUSH2 0x2AF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2E9 DUP2 PUSH2 0x2D7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x302 PUSH0 DUP4 ADD DUP5 PUSH2 0x2E0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x311 DUP2 PUSH2 0x2A6 JUMP JUMPDEST DUP2 EQ PUSH2 0x31B JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x32C DUP2 PUSH2 0x308 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x347 JUMPI PUSH2 0x346 PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x354 DUP5 DUP3 DUP6 ADD PUSH2 0x31E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x53656E64206D6F72652045544800000000000000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x3A1 PUSH1 0xD DUP4 PUSH2 0x35D JUMP JUMPDEST SWAP2 POP PUSH2 0x3AC DUP3 PUSH2 0x36D JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x3CE DUP2 PUSH2 0x395 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3F3 DUP2 PUSH2 0x3D5 JUMP JUMPDEST DUP2 EQ PUSH2 0x3FD JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x40E DUP2 PUSH2 0x3EA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x41D DUP2 PUSH2 0x2D7 JUMP JUMPDEST DUP2 EQ PUSH2 0x427 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x438 DUP2 PUSH2 0x414 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x44C DUP2 PUSH2 0x308 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 DUP1 PUSH0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x46B JUMPI PUSH2 0x46A PUSH2 0x21D JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x478 DUP9 DUP3 DUP10 ADD PUSH2 0x400 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x489 DUP9 DUP3 DUP10 ADD PUSH2 0x42A JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x49A DUP9 DUP3 DUP10 ADD PUSH2 0x43E JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x4AB DUP9 DUP3 DUP10 ADD PUSH2 0x43E JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x4BC DUP9 DUP3 DUP10 ADD PUSH2 0x400 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x500 DUP3 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x50B DUP4 PUSH2 0x2A6 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x519 DUP2 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x530 JUMPI PUSH2 0x52F PUSH2 0x4C9 JUMP JUMPDEST JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x56E DUP3 PUSH2 0x2A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x579 DUP4 PUSH2 0x2A6 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x589 JUMPI PUSH2 0x588 PUSH2 0x537 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 BLOBHASH 0x29 0xCB MUL MCOPY LOG1 PUSH11 0xBA87187DD39A401E222CDC 0xB9 0xA9 0xCC 0xD4 DUP12 PUSH12 0x3DFAEF9A091EC05664736F6C PUSH4 0x4300081A STOP CALLER ",
"sourceMap": "171:985:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;192:48;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;445:118;;;:::i;:::-;;618:338;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;962:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;192:48;;;;;;;;;;;;;;;;;:::o;445:118::-;526:13;;496:26;512:9;496:15;:26::i;:::-;:43;;488:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;445:118::o;618:338::-;683:3;773:10;900:8;;;;;;;;;;;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;725:201;;;;;;943:6;936:13;;;618:338;:::o;962:192::-;1026:7;1044:13;1068:34;:32;:34::i;:::-;1044:59;;1140:6;1132:5;1120:9;:17;;;;:::i;:::-;:27;;;;:::i;:::-;1113:34;;;962:192;;;:::o;88:117:2:-;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:329::-;900:6;949:2;937:9;928:7;924:23;920:32;917:119;;;955:79;;:::i;:::-;917:119;1075:1;1100:53;1145:7;1136:6;1125:9;1121:22;1100:53;:::i;:::-;1090:63;;1046:117;841:329;;;;:::o;1176:77::-;1213:7;1242:5;1231:16;;1176:77;;;:::o;1259:118::-;1346:24;1364:5;1346:24;:::i;:::-;1341:3;1334:37;1259:118;;:::o;1383:222::-;1476:4;1514:2;1503:9;1499:18;1491:26;;1527:71;1595:1;1584:9;1580:17;1571:6;1527:71;:::i;:::-;1383:222;;;;:::o;1611:76::-;1647:7;1676:5;1665:16;;1611:76;;;:::o;1693:115::-;1778:23;1795:5;1778:23;:::i;:::-;1773:3;1766:36;1693:115;;:::o;1814:218::-;1905:4;1943:2;1932:9;1928:18;1920:26;;1956:69;2022:1;2011:9;2007:17;1998:6;1956:69;:::i;:::-;1814:218;;;;:::o;2038:122::-;2111:24;2129:5;2111:24;:::i;:::-;2104:5;2101:35;2091:63;;2150:1;2147;2140:12;2091:63;2038:122;:::o;2166:139::-;2212:5;2250:6;2237:20;2228:29;;2266:33;2293:5;2266:33;:::i;:::-;2166:139;;;;:::o;2311:329::-;2370:6;2419:2;2407:9;2398:7;2394:23;2390:32;2387:119;;;2425:79;;:::i;:::-;2387:119;2545:1;2570:53;2615:7;2606:6;2595:9;2591:22;2570:53;:::i;:::-;2560:63;;2516:117;2311:329;;;;:::o;2646:169::-;2730:11;2764:6;2759:3;2752:19;2804:4;2799:3;2795:14;2780:29;;2646:169;;;;:::o;2821:163::-;2961:15;2957:1;2949:6;2945:14;2938:39;2821:163;:::o;2990:366::-;3132:3;3153:67;3217:2;3212:3;3153:67;:::i;:::-;3146:74;;3229:93;3318:3;3229:93;:::i;:::-;3347:2;3342:3;3338:12;3331:19;;2990:366;;;:::o;3362:419::-;3528:4;3566:2;3555:9;3551:18;3543:26;;3615:9;3609:4;3605:20;3601:1;3590:9;3586:17;3579:47;3643:131;3769:4;3643:131;:::i;:::-;3635:139;;3362:419;;;:::o;3787:105::-;3823:7;3863:22;3856:5;3852:34;3841:45;;3787:105;;;:::o;3898:120::-;3970:23;3987:5;3970:23;:::i;:::-;3963:5;3960:34;3950:62;;4008:1;4005;3998:12;3950:62;3898:120;:::o;4024:141::-;4080:5;4111:6;4105:13;4096:22;;4127:32;4153:5;4127:32;:::i;:::-;4024:141;;;;:::o;4171:120::-;4243:23;4260:5;4243:23;:::i;:::-;4236:5;4233:34;4223:62;;4281:1;4278;4271:12;4223:62;4171:120;:::o;4297:141::-;4353:5;4384:6;4378:13;4369:22;;4400:32;4426:5;4400:32;:::i;:::-;4297:141;;;;:::o;4444:143::-;4501:5;4532:6;4526:13;4517:22;;4548:33;4575:5;4548:33;:::i;:::-;4444:143;;;;:::o;4593:971::-;4696:6;4704;4712;4720;4728;4777:3;4765:9;4756:7;4752:23;4748:33;4745:120;;;4784:79;;:::i;:::-;4745:120;4904:1;4929:63;4984:7;4975:6;4964:9;4960:22;4929:63;:::i;:::-;4919:73;;4875:127;5041:2;5067:63;5122:7;5113:6;5102:9;5098:22;5067:63;:::i;:::-;5057:73;;5012:128;5179:2;5205:64;5261:7;5252:6;5241:9;5237:22;5205:64;:::i;:::-;5195:74;;5150:129;5318:2;5344:64;5400:7;5391:6;5380:9;5376:22;5344:64;:::i;:::-;5334:74;;5289:129;5457:3;5484:63;5539:7;5530:6;5519:9;5515:22;5484:63;:::i;:::-;5474:73;;5428:129;4593:971;;;;;;;;:::o;5570:180::-;5618:77;5615:1;5608:88;5715:4;5712:1;5705:15;5739:4;5736:1;5729:15;5756:410;5796:7;5819:20;5837:1;5819:20;:::i;:::-;5814:25;;5853:20;5871:1;5853:20;:::i;:::-;5848:25;;5908:1;5905;5901:9;5930:30;5948:11;5930:30;:::i;:::-;5919:41;;6109:1;6100:7;6096:15;6093:1;6090:22;6070:1;6063:9;6043:83;6020:139;;6139:18;;:::i;:::-;6020:139;5804:362;5756:410;;;;:::o;6172:180::-;6220:77;6217:1;6210:88;6317:4;6314:1;6307:15;6341:4;6338:1;6331:15;6358:185;6398:1;6415:20;6433:1;6415:20;:::i;:::-;6410:25;;6449:20;6467:1;6449:20;:::i;:::-;6444:25;;6488:1;6478:35;;6493:18;;:::i;:::-;6478:35;6535:1;6532;6528:9;6523:14;;6358:185;;;;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "296400",
"executionCost": "46707",
"totalCost": "343107"
},
"external": {
"convertEthToUsd(uint256)": "infinite",
"fund()": "infinite",
"fundersToAmount(address)": "2779",
"getChainlinkDataFeedLatestAnswer()": "infinite"
}
},
"methodIdentifiers": {
"convertEthToUsd(uint256)": "c086381e",
"fund()": "b60d4288",
"fundersToAmount(address)": "9f883a05",
"getChainlinkDataFeedLatestAnswer()": "bea4dfb5"
}
},
"abi": [
{
"inputs": [],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "ethAmount",
"type": "uint256"
}
],
"name": "convertEthToUsd",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "fund",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "fundersToAmount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getChainlinkDataFeedLatestAnswer",
"outputs": [
{
"internalType": "int256",
"name": "",
"type": "int256"
}
],
"stateMutability": "view",
"type": "function"
}
]
}
{
"compiler": {
"version": "0.8.26+commit.8a97fa7a"
},
"language": "Solidity",
"output": {
"abi": [
{
"inputs": [],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "ethAmount",
"type": "uint256"
}
],
"name": "convertEthToUsd",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "fund",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "fundersToAmount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getChainlinkDataFeedLatestAnswer",
"outputs": [
{
"internalType": "int256",
"name": "",
"type": "int256"
}
],
"stateMutability": "view",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"userdoc": {
"kind": "user",
"methods": {
"getChainlinkDataFeedLatestAnswer()": {
"notice": "Returns the latest answer."
}
},
"version": 1
}
},
"settings": {
"compilationTarget": {
"test/FundMe.sol": "FundMe"
},
"evmVersion": "cancun",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs"
},
"optimizer": {
"enabled": false,
"runs": 200
},
"remappings": []
},
"sources": {
"@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol": {
"keccak256": "0x257a8d28fa83d3d942547c8e129ef465e4b5f3f31171e7be4739a4c98da6b4f0",
"license": "MIT",
"urls": [
"bzz-raw://6d39e11b1dc7b9b8ccdabbc9be442ab7cda4a81c748f57e316dcb1bcb4a28bf9",
"dweb:/ipfs/QmaG6vz6W6iEUBsbHSBob5mdcitYxWjoygxREHpsJHfWrS"
]
},
"test/FundMe.sol": {
"keccak256": "0xddc2cd46afe3a572f8099fd6a66e4805d3dc36e6010525b4f3564442e39ebe28",
"license": "MIT",
"urls": [
"bzz-raw://b12ce5ba6782e0a9ad638e2b77e6bd6f1d165772bad64f3207be5957622ea7ff",
"dweb:/ipfs/QmRciMmY8uvpEDct3cxgBpWW6rTxzGjpphe9tKb8wQiKV3"
]
}
},
"version": 1
}
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import {AggregatorV3Interface} from "@chainlink/contracts/src/v0.8/shared/interfaces/AggregatorV3Interface.sol";
contract FundMe{
mapping(address=>uint256) public fundersToAmount;
AggregatorV3Interface internal dataFeed;
uint256 MINIMUM_VALUE = 100 *10 **18;
constructor(){
dataFeed = AggregatorV3Interface(0x694AA1769357215DE4FAC081bf1f309aDC325306);
}
function fund() external payable {
require(convertEthToUsd(msg.value) >= MINIMUM_VALUE,"Send more ETH");
fundersToAmount[msg.sender] = msg.value;
}
/**
* Returns the latest answer.
*/
function getChainlinkDataFeedLatestAnswer() public view returns (int) {
// prettier-ignore
(
/* uint80 roundID */,
int answer,
/*uint startedAt*/,
/*uint timeStamp*/,
/*uint80 answeredInRound*/
) = dataFeed.latestRoundData();
return answer;
}
function convertEthToUsd(uint256 ethAmount) public view returns(uint256){
uint256 price = uint256(getChainlinkDataFeedLatestAnswer());
return ethAmount * price /(10 **8);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment