Skip to content

Instantly share code, notes, and snippets.

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

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

Select an option

Save Charlie-pang-sys/765bc783790f8cd0645339eef054c128 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": "62bdeb86c5d3c1ffdfd2b413253e7cd4",
"_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 fundersToAmount[msg.sender] = msg.value;\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:1205 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:1205 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:1205 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:612 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\":667:1005 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\":1011:1203 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:612 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\":596:605 msg.value */\n callvalue\n /* \"test/FundMe.sol\":566:581 fundersToAmount */\n 0x00\n /* \"test/FundMe.sol\":566:593 fundersToAmount[msg.sender] */\n dup1\n /* \"test/FundMe.sol\":582:592 msg.sender */\n caller\n /* \"test/FundMe.sol\":566:593 fundersToAmount[msg.sender] */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n dup2\n mstore\n 0x20\n add\n swap1\n dup2\n mstore\n 0x20\n add\n 0x00\n keccak256\n /* \"test/FundMe.sol\":566:605 fundersToAmount[msg.sender] = msg.value */\n dup2\n swap1\n sstore\n pop\n /* \"test/FundMe.sol\":445:612 function fund() external payable {... */\n jump\t// out\n /* \"test/FundMe.sol\":667:1005 function getChainlinkDataFeedLatestAnswer() public view returns (int) {... */\n tag_17:\n /* \"test/FundMe.sol\":732:735 int */\n 0x00\n /* \"test/FundMe.sol\":822:832 int answer */\n dup1\n /* \"test/FundMe.sol\":949:957 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\":949:973 dataFeed.latestRoundData */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n 0xfeaf968c\n /* \"test/FundMe.sol\":949:975 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\":774:975 (... */\n pop\n pop\n pop\n swap2\n pop\n pop\n /* \"test/FundMe.sol\":992:998 answer */\n dup1\n /* \"test/FundMe.sol\":985:998 return answer */\n swap2\n pop\n pop\n /* \"test/FundMe.sol\":667:1005 function getChainlinkDataFeedLatestAnswer() public view returns (int) {... */\n swap1\n jump\t// out\n /* \"test/FundMe.sol\":1011:1203 function convertEthToUsd(uint256 ethAmount) public view returns(uint256){... */\n tag_24:\n /* \"test/FundMe.sol\":1075:1082 uint256 */\n 0x00\n /* \"test/FundMe.sol\":1093:1106 uint256 price */\n dup1\n /* \"test/FundMe.sol\":1117:1151 getChainlinkDataFeedLatestAnswer() */\n tag_37\n /* \"test/FundMe.sol\":1117:1149 getChainlinkDataFeedLatestAnswer */\n tag_17\n /* \"test/FundMe.sol\":1117:1151 getChainlinkDataFeedLatestAnswer() */\n jump\t// in\n tag_37:\n /* \"test/FundMe.sol\":1093:1152 uint256 price = uint256(getChainlinkDataFeedLatestAnswer()) */\n swap1\n pop\n /* \"test/FundMe.sol\":1189:1195 10 **8 */\n 0x05f5e100\n /* \"test/FundMe.sol\":1181:1186 price */\n dup2\n /* \"test/FundMe.sol\":1169:1178 ethAmount */\n dup5\n /* \"test/FundMe.sol\":1169:1186 ethAmount * price */\n tag_38\n swap2\n swap1\n tag_39\n jump\t// in\n tag_38:\n /* \"test/FundMe.sol\":1169:1196 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\":1162:1196 return ethAmount * price /(10 **8) */\n swap2\n pop\n pop\n /* \"test/FundMe.sol\":1011:1203 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: 0xa2646970667358221220c64f31f4ffea7672201fc4723012094b6a4ac97cfbf5599ce9046b7bc73862b264736f6c634300081a0033\n}\n",
"bytecode": {
"functionDebugData": {
"@_73": {
"entryPoint": null,
"id": 73,
"parameterSlots": 0,
"returnSlots": 0
}
},
"generatedSources": [],
"linkReferences": {},
"object": "608060405268056bc75e2d63100000600255348015601b575f80fd5b5073694aa1769357215de4fac081bf1f309adc32530660015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061060b8061007d5f395ff3fe60806040526004361061003e575f3560e01c80639f883a0514610042578063b60d42881461007e578063bea4dfb514610088578063c086381e146100b2575b5f80fd5b34801561004d575f80fd5b50610068600480360381019061006391906102bc565b6100ee565b60405161007591906102ff565b60405180910390f35b610086610102565b005b348015610093575f80fd5b5061009c610192565b6040516100a99190610330565b60405180910390f35b3480156100bd575f80fd5b506100d860048036038101906100d39190610373565b61022f565b6040516100e591906102ff565b60405180910390f35b5f602052805f5260405f205f915090505481565b60025461010e3461022f565b101561014f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610146906103f8565b60405180910390fd5b345f803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550565b5f8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156101fe573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102229190610493565b5050509150508091505090565b5f80610239610192565b90506305f5e100818461024c9190610537565b61025691906105a5565b915050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61028b82610262565b9050919050565b61029b81610281565b81146102a5575f80fd5b50565b5f813590506102b681610292565b92915050565b5f602082840312156102d1576102d061025e565b5b5f6102de848285016102a8565b91505092915050565b5f819050919050565b6102f9816102e7565b82525050565b5f6020820190506103125f8301846102f0565b92915050565b5f819050919050565b61032a81610318565b82525050565b5f6020820190506103435f830184610321565b92915050565b610352816102e7565b811461035c575f80fd5b50565b5f8135905061036d81610349565b92915050565b5f602082840312156103885761038761025e565b5b5f6103958482850161035f565b91505092915050565b5f82825260208201905092915050565b7f53656e64206d6f726520455448000000000000000000000000000000000000005f82015250565b5f6103e2600d8361039e565b91506103ed826103ae565b602082019050919050565b5f6020820190508181035f83015261040f816103d6565b9050919050565b5f69ffffffffffffffffffff82169050919050565b61043481610416565b811461043e575f80fd5b50565b5f8151905061044f8161042b565b92915050565b61045e81610318565b8114610468575f80fd5b50565b5f8151905061047981610455565b92915050565b5f8151905061048d81610349565b92915050565b5f805f805f60a086880312156104ac576104ab61025e565b5b5f6104b988828901610441565b95505060206104ca8882890161046b565b94505060406104db8882890161047f565b93505060606104ec8882890161047f565b92505060806104fd88828901610441565b9150509295509295909350565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610541826102e7565b915061054c836102e7565b925082820261055a816102e7565b915082820484148315176105715761057061050a565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6105af826102e7565b91506105ba836102e7565b9250826105ca576105c9610578565b5b82820490509291505056fea2646970667358221220c64f31f4ffea7672201fc4723012094b6a4ac97cfbf5599ce9046b7bc73862b264736f6c634300081a0033",
"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 0x60B 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 0x2BC JUMP JUMPDEST PUSH2 0xEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x75 SWAP2 SWAP1 PUSH2 0x2FF 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 0x192 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA9 SWAP2 SWAP1 PUSH2 0x330 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 0x373 JUMP JUMPDEST PUSH2 0x22F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x2FF 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 0x22F JUMP JUMPDEST LT ISZERO PUSH2 0x14F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x146 SWAP1 PUSH2 0x3F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 DUP2 SWAP1 SSTORE POP 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 0x1FE 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 0x222 SWAP2 SWAP1 PUSH2 0x493 JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x239 PUSH2 0x192 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP2 DUP5 PUSH2 0x24C SWAP2 SWAP1 PUSH2 0x537 JUMP JUMPDEST PUSH2 0x256 SWAP2 SWAP1 PUSH2 0x5A5 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 0x28B DUP3 PUSH2 0x262 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x29B DUP2 PUSH2 0x281 JUMP JUMPDEST DUP2 EQ PUSH2 0x2A5 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2B6 DUP2 PUSH2 0x292 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D1 JUMPI PUSH2 0x2D0 PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x2DE DUP5 DUP3 DUP6 ADD PUSH2 0x2A8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2F9 DUP2 PUSH2 0x2E7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x312 PUSH0 DUP4 ADD DUP5 PUSH2 0x2F0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x32A DUP2 PUSH2 0x318 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x343 PUSH0 DUP4 ADD DUP5 PUSH2 0x321 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x352 DUP2 PUSH2 0x2E7 JUMP JUMPDEST DUP2 EQ PUSH2 0x35C JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x36D DUP2 PUSH2 0x349 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x388 JUMPI PUSH2 0x387 PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x395 DUP5 DUP3 DUP6 ADD PUSH2 0x35F 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 0x3E2 PUSH1 0xD DUP4 PUSH2 0x39E JUMP JUMPDEST SWAP2 POP PUSH2 0x3ED DUP3 PUSH2 0x3AE 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 0x40F DUP2 PUSH2 0x3D6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x434 DUP2 PUSH2 0x416 JUMP JUMPDEST DUP2 EQ PUSH2 0x43E JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x44F DUP2 PUSH2 0x42B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x45E DUP2 PUSH2 0x318 JUMP JUMPDEST DUP2 EQ PUSH2 0x468 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x479 DUP2 PUSH2 0x455 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x48D DUP2 PUSH2 0x349 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 DUP1 PUSH0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x4AC JUMPI PUSH2 0x4AB PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x4B9 DUP9 DUP3 DUP10 ADD PUSH2 0x441 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x4CA DUP9 DUP3 DUP10 ADD PUSH2 0x46B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x4DB DUP9 DUP3 DUP10 ADD PUSH2 0x47F JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x4EC DUP9 DUP3 DUP10 ADD PUSH2 0x47F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x4FD DUP9 DUP3 DUP10 ADD PUSH2 0x441 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 0x541 DUP3 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x54C DUP4 PUSH2 0x2E7 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x55A DUP2 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x571 JUMPI PUSH2 0x570 PUSH2 0x50A 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 0x5AF DUP3 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x5BA DUP4 PUSH2 0x2E7 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x5CA JUMPI PUSH2 0x5C9 PUSH2 0x578 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC6 0x4F BALANCE DELEGATECALL SELFDESTRUCT 0xEA PUSH23 0x72201FC4723012094B6A4AC97CFBF5599CE9046B7BC738 PUSH3 0xB26473 PUSH16 0x6C634300081A00330000000000000000 ",
"sourceMap": "171:1034:1:-:0;;;315:12;291:36;;333:106;;;;;;;;;;389:42;356:8;;:76;;;;;;;;;;;;;;;;;;171:1034;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@convertEthToUsd_135": {
"entryPoint": 559,
"id": 135,
"parameterSlots": 1,
"returnSlots": 1
},
"@fund_95": {
"entryPoint": 258,
"id": 95,
"parameterSlots": 0,
"returnSlots": 0
},
"@fundersToAmount_53": {
"entryPoint": 238,
"id": 53,
"parameterSlots": 0,
"returnSlots": 0
},
"@getChainlinkDataFeedLatestAnswer_110": {
"entryPoint": 402,
"id": 110,
"parameterSlots": 0,
"returnSlots": 1
},
"abi_decode_t_address": {
"entryPoint": 680,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_int256_fromMemory": {
"entryPoint": 1131,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256": {
"entryPoint": 863,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256_fromMemory": {
"entryPoint": 1151,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint80_fromMemory": {
"entryPoint": 1089,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_address": {
"entryPoint": 700,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256": {
"entryPoint": 883,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory": {
"entryPoint": 1171,
"id": null,
"parameterSlots": 2,
"returnSlots": 5
},
"abi_encode_t_int256_to_t_int256_fromStack": {
"entryPoint": 801,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack": {
"entryPoint": 982,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 752,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed": {
"entryPoint": 816,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 1016,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": 767,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 926,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_div_t_uint256": {
"entryPoint": 1445,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_mul_t_uint256": {
"entryPoint": 1335,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_address": {
"entryPoint": 641,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_int256": {
"entryPoint": 792,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 610,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 743,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint80": {
"entryPoint": 1046,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 1290,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x12": {
"entryPoint": 1400,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 606,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8": {
"entryPoint": 942,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address": {
"entryPoint": 658,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_int256": {
"entryPoint": 1109,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 841,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint80": {
"entryPoint": 1067,
"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": "60806040526004361061003e575f3560e01c80639f883a0514610042578063b60d42881461007e578063bea4dfb514610088578063c086381e146100b2575b5f80fd5b34801561004d575f80fd5b50610068600480360381019061006391906102bc565b6100ee565b60405161007591906102ff565b60405180910390f35b610086610102565b005b348015610093575f80fd5b5061009c610192565b6040516100a99190610330565b60405180910390f35b3480156100bd575f80fd5b506100d860048036038101906100d39190610373565b61022f565b6040516100e591906102ff565b60405180910390f35b5f602052805f5260405f205f915090505481565b60025461010e3461022f565b101561014f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610146906103f8565b60405180910390fd5b345f803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550565b5f8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156101fe573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102229190610493565b5050509150508091505090565b5f80610239610192565b90506305f5e100818461024c9190610537565b61025691906105a5565b915050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61028b82610262565b9050919050565b61029b81610281565b81146102a5575f80fd5b50565b5f813590506102b681610292565b92915050565b5f602082840312156102d1576102d061025e565b5b5f6102de848285016102a8565b91505092915050565b5f819050919050565b6102f9816102e7565b82525050565b5f6020820190506103125f8301846102f0565b92915050565b5f819050919050565b61032a81610318565b82525050565b5f6020820190506103435f830184610321565b92915050565b610352816102e7565b811461035c575f80fd5b50565b5f8135905061036d81610349565b92915050565b5f602082840312156103885761038761025e565b5b5f6103958482850161035f565b91505092915050565b5f82825260208201905092915050565b7f53656e64206d6f726520455448000000000000000000000000000000000000005f82015250565b5f6103e2600d8361039e565b91506103ed826103ae565b602082019050919050565b5f6020820190508181035f83015261040f816103d6565b9050919050565b5f69ffffffffffffffffffff82169050919050565b61043481610416565b811461043e575f80fd5b50565b5f8151905061044f8161042b565b92915050565b61045e81610318565b8114610468575f80fd5b50565b5f8151905061047981610455565b92915050565b5f8151905061048d81610349565b92915050565b5f805f805f60a086880312156104ac576104ab61025e565b5b5f6104b988828901610441565b95505060206104ca8882890161046b565b94505060406104db8882890161047f565b93505060606104ec8882890161047f565b92505060806104fd88828901610441565b9150509295509295909350565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610541826102e7565b915061054c836102e7565b925082820261055a816102e7565b915082820484148315176105715761057061050a565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6105af826102e7565b91506105ba836102e7565b9250826105ca576105c9610578565b5b82820490509291505056fea2646970667358221220c64f31f4ffea7672201fc4723012094b6a4ac97cfbf5599ce9046b7bc73862b264736f6c634300081a0033",
"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 0x2BC JUMP JUMPDEST PUSH2 0xEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x75 SWAP2 SWAP1 PUSH2 0x2FF 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 0x192 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA9 SWAP2 SWAP1 PUSH2 0x330 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 0x373 JUMP JUMPDEST PUSH2 0x22F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x2FF 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 0x22F JUMP JUMPDEST LT ISZERO PUSH2 0x14F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x146 SWAP1 PUSH2 0x3F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 DUP2 SWAP1 SSTORE POP 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 0x1FE 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 0x222 SWAP2 SWAP1 PUSH2 0x493 JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x239 PUSH2 0x192 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP2 DUP5 PUSH2 0x24C SWAP2 SWAP1 PUSH2 0x537 JUMP JUMPDEST PUSH2 0x256 SWAP2 SWAP1 PUSH2 0x5A5 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 0x28B DUP3 PUSH2 0x262 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x29B DUP2 PUSH2 0x281 JUMP JUMPDEST DUP2 EQ PUSH2 0x2A5 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2B6 DUP2 PUSH2 0x292 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D1 JUMPI PUSH2 0x2D0 PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x2DE DUP5 DUP3 DUP6 ADD PUSH2 0x2A8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2F9 DUP2 PUSH2 0x2E7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x312 PUSH0 DUP4 ADD DUP5 PUSH2 0x2F0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x32A DUP2 PUSH2 0x318 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x343 PUSH0 DUP4 ADD DUP5 PUSH2 0x321 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x352 DUP2 PUSH2 0x2E7 JUMP JUMPDEST DUP2 EQ PUSH2 0x35C JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x36D DUP2 PUSH2 0x349 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x388 JUMPI PUSH2 0x387 PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x395 DUP5 DUP3 DUP6 ADD PUSH2 0x35F 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 0x3E2 PUSH1 0xD DUP4 PUSH2 0x39E JUMP JUMPDEST SWAP2 POP PUSH2 0x3ED DUP3 PUSH2 0x3AE 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 0x40F DUP2 PUSH2 0x3D6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x434 DUP2 PUSH2 0x416 JUMP JUMPDEST DUP2 EQ PUSH2 0x43E JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x44F DUP2 PUSH2 0x42B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x45E DUP2 PUSH2 0x318 JUMP JUMPDEST DUP2 EQ PUSH2 0x468 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x479 DUP2 PUSH2 0x455 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x48D DUP2 PUSH2 0x349 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 DUP1 PUSH0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x4AC JUMPI PUSH2 0x4AB PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x4B9 DUP9 DUP3 DUP10 ADD PUSH2 0x441 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x4CA DUP9 DUP3 DUP10 ADD PUSH2 0x46B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x4DB DUP9 DUP3 DUP10 ADD PUSH2 0x47F JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x4EC DUP9 DUP3 DUP10 ADD PUSH2 0x47F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x4FD DUP9 DUP3 DUP10 ADD PUSH2 0x441 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 0x541 DUP3 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x54C DUP4 PUSH2 0x2E7 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x55A DUP2 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x571 JUMPI PUSH2 0x570 PUSH2 0x50A 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 0x5AF DUP3 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x5BA DUP4 PUSH2 0x2E7 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x5CA JUMPI PUSH2 0x5C9 PUSH2 0x578 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC6 0x4F BALANCE DELEGATECALL SELFDESTRUCT 0xEA PUSH23 0x72201FC4723012094B6A4AC97CFBF5599CE9046B7BC738 PUSH3 0xB26473 PUSH16 0x6C634300081A00330000000000000000 ",
"sourceMap": "171:1034:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;192:48;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;445:167;;;:::i;:::-;;667:338;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1011:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;192:48;;;;;;;;;;;;;;;;;:::o;445:167::-;526:13;;496:26;512:9;496:15;:26::i;:::-;:43;;488:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;596:9;566:15;:27;582:10;566:27;;;;;;;;;;;;;;;:39;;;;445:167::o;667:338::-;732:3;822:10;949:8;;;;;;;;;;;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;774:201;;;;;;992:6;985:13;;;667:338;:::o;1011:192::-;1075:7;1093:13;1117:34;:32;:34::i;:::-;1093:59;;1189:6;1181:5;1169:9;:17;;;;:::i;:::-;:27;;;;:::i;:::-;1162:34;;;1011: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": "309400",
"executionCost": "46719",
"totalCost": "356119"
},
"external": {
"convertEthToUsd(uint256)": "infinite",
"fund()": "infinite",
"fundersToAmount(address)": "2779",
"getChainlinkDataFeedLatestAnswer()": "infinite"
}
},
"legacyAssembly": {
".code": [
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "80"
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 171,
"end": 1205,
"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": 1205,
"name": "PUSH #[$]",
"source": 1,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 171,
"end": 1205,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH [$]",
"source": 1,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 171,
"end": 1205,
"name": "CODECOPY",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 171,
"end": 1205,
"name": "RETURN",
"source": 1
}
],
".data": {
"0": {
".auxdata": "a2646970667358221220c64f31f4ffea7672201fc4723012094b6a4ac97cfbf5599ce9046b7bc73862b264736f6c634300081a0033",
".code": [
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "80"
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 171,
"end": 1205,
"name": "MSTORE",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 171,
"end": 1205,
"name": "CALLDATASIZE",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "LT",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH [tag]",
"source": 1,
"value": "1"
},
{
"begin": 171,
"end": 1205,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 171,
"end": 1205,
"name": "CALLDATALOAD",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "E0"
},
{
"begin": 171,
"end": 1205,
"name": "SHR",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "9F883A05"
},
{
"begin": 171,
"end": 1205,
"name": "EQ",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH [tag]",
"source": 1,
"value": "2"
},
{
"begin": 171,
"end": 1205,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "B60D4288"
},
{
"begin": 171,
"end": 1205,
"name": "EQ",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH [tag]",
"source": 1,
"value": "3"
},
{
"begin": 171,
"end": 1205,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "BEA4DFB5"
},
{
"begin": 171,
"end": 1205,
"name": "EQ",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH [tag]",
"source": 1,
"value": "4"
},
{
"begin": 171,
"end": 1205,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "C086381E"
},
{
"begin": 171,
"end": 1205,
"name": "EQ",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH [tag]",
"source": 1,
"value": "5"
},
{
"begin": 171,
"end": 1205,
"name": "JUMPI",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "tag",
"source": 1,
"value": "1"
},
{
"begin": 171,
"end": 1205,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 171,
"end": 1205,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 171,
"end": 1205,
"name": "DUP1",
"source": 1
},
{
"begin": 171,
"end": 1205,
"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": 612,
"name": "tag",
"source": 1,
"value": "3"
},
{
"begin": 445,
"end": 612,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 445,
"end": 612,
"name": "PUSH [tag]",
"source": 1,
"value": "13"
},
{
"begin": 445,
"end": 612,
"name": "PUSH [tag]",
"source": 1,
"value": "14"
},
{
"begin": 445,
"end": 612,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 445,
"end": 612,
"name": "tag",
"source": 1,
"value": "13"
},
{
"begin": 445,
"end": 612,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 445,
"end": 612,
"name": "STOP",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "tag",
"source": 1,
"value": "4"
},
{
"begin": 667,
"end": 1005,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "DUP1",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "ISZERO",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "PUSH [tag]",
"source": 1,
"value": "15"
},
{
"begin": 667,
"end": 1005,
"name": "JUMPI",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 667,
"end": 1005,
"name": "DUP1",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "REVERT",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "tag",
"source": 1,
"value": "15"
},
{
"begin": 667,
"end": 1005,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "POP",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "PUSH [tag]",
"source": 1,
"value": "16"
},
{
"begin": 667,
"end": 1005,
"name": "PUSH [tag]",
"source": 1,
"value": "17"
},
{
"begin": 667,
"end": 1005,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "tag",
"source": 1,
"value": "16"
},
{
"begin": 667,
"end": 1005,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 667,
"end": 1005,
"name": "MLOAD",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "PUSH [tag]",
"source": 1,
"value": "18"
},
{
"begin": 667,
"end": 1005,
"name": "SWAP2",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "SWAP1",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "PUSH [tag]",
"source": 1,
"value": "19"
},
{
"begin": 667,
"end": 1005,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "tag",
"source": 1,
"value": "18"
},
{
"begin": 667,
"end": 1005,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 667,
"end": 1005,
"name": "MLOAD",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "DUP1",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "SWAP2",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "SUB",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "SWAP1",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "RETURN",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "tag",
"source": 1,
"value": "5"
},
{
"begin": 1011,
"end": 1203,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "DUP1",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "ISZERO",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH [tag]",
"source": 1,
"value": "20"
},
{
"begin": 1011,
"end": 1203,
"name": "JUMPI",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1011,
"end": 1203,
"name": "DUP1",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "REVERT",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "tag",
"source": 1,
"value": "20"
},
{
"begin": 1011,
"end": 1203,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "POP",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH [tag]",
"source": 1,
"value": "21"
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 1011,
"end": 1203,
"name": "DUP1",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "CALLDATASIZE",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "SUB",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "DUP2",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "ADD",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "SWAP1",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH [tag]",
"source": 1,
"value": "22"
},
{
"begin": 1011,
"end": 1203,
"name": "SWAP2",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "SWAP1",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH [tag]",
"source": 1,
"value": "23"
},
{
"begin": 1011,
"end": 1203,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "tag",
"source": 1,
"value": "22"
},
{
"begin": 1011,
"end": 1203,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH [tag]",
"source": 1,
"value": "24"
},
{
"begin": 1011,
"end": 1203,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "tag",
"source": 1,
"value": "21"
},
{
"begin": 1011,
"end": 1203,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 1011,
"end": 1203,
"name": "MLOAD",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH [tag]",
"source": 1,
"value": "25"
},
{
"begin": 1011,
"end": 1203,
"name": "SWAP2",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "SWAP1",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH [tag]",
"source": 1,
"value": "12"
},
{
"begin": 1011,
"end": 1203,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "tag",
"source": 1,
"value": "25"
},
{
"begin": 1011,
"end": 1203,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 1011,
"end": 1203,
"name": "MLOAD",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "DUP1",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "SWAP2",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "SUB",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "SWAP1",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"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": 612,
"name": "tag",
"source": 1,
"value": "14"
},
{
"begin": 445,
"end": 612,
"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": 596,
"end": 605,
"name": "CALLVALUE",
"source": 1
},
{
"begin": 566,
"end": 581,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 566,
"end": 593,
"name": "DUP1",
"source": 1
},
{
"begin": 582,
"end": 592,
"name": "CALLER",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 566,
"end": 593,
"name": "AND",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 566,
"end": 593,
"name": "AND",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "DUP2",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "MSTORE",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 566,
"end": 593,
"name": "ADD",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "SWAP1",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "DUP2",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "MSTORE",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 566,
"end": 593,
"name": "ADD",
"source": 1
},
{
"begin": 566,
"end": 593,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 566,
"end": 593,
"name": "KECCAK256",
"source": 1
},
{
"begin": 566,
"end": 605,
"name": "DUP2",
"source": 1
},
{
"begin": 566,
"end": 605,
"name": "SWAP1",
"source": 1
},
{
"begin": 566,
"end": 605,
"name": "SSTORE",
"source": 1
},
{
"begin": 566,
"end": 605,
"name": "POP",
"source": 1
},
{
"begin": 445,
"end": 612,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "tag",
"source": 1,
"value": "17"
},
{
"begin": 667,
"end": 1005,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 732,
"end": 735,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 822,
"end": 832,
"name": "DUP1",
"source": 1
},
{
"begin": 949,
"end": 957,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 949,
"end": 957,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 949,
"end": 957,
"name": "SWAP1",
"source": 1
},
{
"begin": 949,
"end": 957,
"name": "SLOAD",
"source": 1
},
{
"begin": 949,
"end": 957,
"name": "SWAP1",
"source": 1
},
{
"begin": 949,
"end": 957,
"name": "PUSH",
"source": 1,
"value": "100"
},
{
"begin": 949,
"end": 957,
"name": "EXP",
"source": 1
},
{
"begin": 949,
"end": 957,
"name": "SWAP1",
"source": 1
},
{
"begin": 949,
"end": 957,
"name": "DIV",
"source": 1
},
{
"begin": 949,
"end": 957,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 949,
"end": 957,
"name": "AND",
"source": 1
},
{
"begin": 949,
"end": 973,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 949,
"end": 973,
"name": "AND",
"source": 1
},
{
"begin": 949,
"end": 973,
"name": "PUSH",
"source": 1,
"value": "FEAF968C"
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 949,
"end": 975,
"name": "MLOAD",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP2",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFF"
},
{
"begin": 949,
"end": 975,
"name": "AND",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "E0"
},
{
"begin": 949,
"end": 975,
"name": "SHL",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP2",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "MSTORE",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 949,
"end": 975,
"name": "ADD",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "A0"
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 949,
"end": 975,
"name": "MLOAD",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP1",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP4",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "SUB",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP2",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP7",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "GAS",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "STATICCALL",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "ISZERO",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP1",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "ISZERO",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH [tag]",
"source": 1,
"value": "33"
},
{
"begin": 949,
"end": 975,
"name": "JUMPI",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 949,
"end": 975,
"name": "DUP1",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "RETURNDATACOPY",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 949,
"end": 975,
"name": "REVERT",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "tag",
"source": 1,
"value": "33"
},
{
"begin": 949,
"end": 975,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 949,
"end": 975,
"name": "MLOAD",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "RETURNDATASIZE",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 949,
"end": 975,
"name": "NOT",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 949,
"end": 975,
"name": "DUP3",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "ADD",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "AND",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP3",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "ADD",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP1",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 949,
"end": 975,
"name": "MSTORE",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "DUP2",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "ADD",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "SWAP1",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH [tag]",
"source": 1,
"value": "34"
},
{
"begin": 949,
"end": 975,
"name": "SWAP2",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "SWAP1",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "PUSH [tag]",
"source": 1,
"value": "35"
},
{
"begin": 949,
"end": 975,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 949,
"end": 975,
"name": "tag",
"source": 1,
"value": "34"
},
{
"begin": 949,
"end": 975,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 774,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 774,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 774,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 774,
"end": 975,
"name": "SWAP2",
"source": 1
},
{
"begin": 774,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 774,
"end": 975,
"name": "POP",
"source": 1
},
{
"begin": 992,
"end": 998,
"name": "DUP1",
"source": 1
},
{
"begin": 985,
"end": 998,
"name": "SWAP2",
"source": 1
},
{
"begin": 985,
"end": 998,
"name": "POP",
"source": 1
},
{
"begin": 985,
"end": 998,
"name": "POP",
"source": 1
},
{
"begin": 667,
"end": 1005,
"name": "SWAP1",
"source": 1
},
{
"begin": 667,
"end": 1005,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "tag",
"source": 1,
"value": "24"
},
{
"begin": 1011,
"end": 1203,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1075,
"end": 1082,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1093,
"end": 1106,
"name": "DUP1",
"source": 1
},
{
"begin": 1117,
"end": 1151,
"name": "PUSH [tag]",
"source": 1,
"value": "37"
},
{
"begin": 1117,
"end": 1149,
"name": "PUSH [tag]",
"source": 1,
"value": "17"
},
{
"begin": 1117,
"end": 1151,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1117,
"end": 1151,
"name": "tag",
"source": 1,
"value": "37"
},
{
"begin": 1117,
"end": 1151,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1093,
"end": 1152,
"name": "SWAP1",
"source": 1
},
{
"begin": 1093,
"end": 1152,
"name": "POP",
"source": 1
},
{
"begin": 1189,
"end": 1195,
"name": "PUSH",
"source": 1,
"value": "5F5E100"
},
{
"begin": 1181,
"end": 1186,
"name": "DUP2",
"source": 1
},
{
"begin": 1169,
"end": 1178,
"name": "DUP5",
"source": 1
},
{
"begin": 1169,
"end": 1186,
"name": "PUSH [tag]",
"source": 1,
"value": "38"
},
{
"begin": 1169,
"end": 1186,
"name": "SWAP2",
"source": 1
},
{
"begin": 1169,
"end": 1186,
"name": "SWAP1",
"source": 1
},
{
"begin": 1169,
"end": 1186,
"name": "PUSH [tag]",
"source": 1,
"value": "39"
},
{
"begin": 1169,
"end": 1186,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1169,
"end": 1186,
"name": "tag",
"source": 1,
"value": "38"
},
{
"begin": 1169,
"end": 1186,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1169,
"end": 1196,
"name": "PUSH [tag]",
"source": 1,
"value": "40"
},
{
"begin": 1169,
"end": 1196,
"name": "SWAP2",
"source": 1
},
{
"begin": 1169,
"end": 1196,
"name": "SWAP1",
"source": 1
},
{
"begin": 1169,
"end": 1196,
"name": "PUSH [tag]",
"source": 1,
"value": "41"
},
{
"begin": 1169,
"end": 1196,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1169,
"end": 1196,
"name": "tag",
"source": 1,
"value": "40"
},
{
"begin": 1169,
"end": 1196,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1162,
"end": 1196,
"name": "SWAP2",
"source": 1
},
{
"begin": 1162,
"end": 1196,
"name": "POP",
"source": 1
},
{
"begin": 1162,
"end": 1196,
"name": "POP",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "SWAP2",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "SWAP1",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"name": "POP",
"source": 1
},
{
"begin": 1011,
"end": 1203,
"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\":\"0xd2d7de32192617b0f3dce9cc46fde936d5b24bdff4c10368e014522bb0852536\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d2d71fa512754e3ebeb2fe559298dcd802288e26c40d605b0bff9fb4ac52b1e7\",\"dweb:/ipfs/QmRMRy6FD6NvwEqreZhiPnCAFPvbNhEz1cZ49uWrsPveG5\"]}},\"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": [
136
]
},
"id": 137,
"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": 137,
"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": 136,
"linearizedBaseContracts": [
136
],
"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": 136,
"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": 136,
"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": 136,
"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": 136,
"src": "333:106:1",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 94,
"nodeType": "Block",
"src": "478:134: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": 135,
"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"
},
{
"expression": {
"id": 92,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"baseExpression": {
"id": 86,
"name": "fundersToAmount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 53,
"src": "566:15:1",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
"typeString": "mapping(address => uint256)"
}
},
"id": 89,
"indexExpression": {
"expression": {
"id": 87,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4294967281,
"src": "582:3:1",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 88,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberLocation": "586:6:1",
"memberName": "sender",
"nodeType": "MemberAccess",
"src": "582:10:1",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "566:27:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"expression": {
"id": 90,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4294967281,
"src": "596:3:1",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 91,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberLocation": "600:5:1",
"memberName": "value",
"nodeType": "MemberAccess",
"src": "596:9:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "566:39:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 93,
"nodeType": "ExpressionStatement",
"src": "566:39:1"
}
]
},
"functionSelector": "b60d4288",
"id": 95,
"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": 136,
"src": "445:167:1",
"stateMutability": "payable",
"virtual": false,
"visibility": "external"
},
{
"body": {
"id": 109,
"nodeType": "Block",
"src": "737:268:1",
"statements": [
{
"assignments": [
null,
102,
null,
null,
null
],
"declarations": [
null,
{
"constant": false,
"id": 102,
"mutability": "mutable",
"name": "answer",
"nameLocation": "826:6:1",
"nodeType": "VariableDeclaration",
"scope": 109,
"src": "822:10:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 101,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "822:3:1",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"visibility": "internal"
},
null,
null,
null
],
"id": 106,
"initialValue": {
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"id": 103,
"name": "dataFeed",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 56,
"src": "949:8:1",
"typeDescriptions": {
"typeIdentifier": "t_contract$_AggregatorV3Interface_$45",
"typeString": "contract AggregatorV3Interface"
}
},
"id": 104,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberLocation": "958:15:1",
"memberName": "latestRoundData",
"nodeType": "MemberAccess",
"referencedDeclaration": 44,
"src": "949: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": 105,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"nameLocations": [],
"names": [],
"nodeType": "FunctionCall",
"src": "949: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": "774:201:1"
},
{
"expression": {
"id": 107,
"name": "answer",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 102,
"src": "992:6:1",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"functionReturnParameters": 100,
"id": 108,
"nodeType": "Return",
"src": "985:13:1"
}
]
},
"documentation": {
"id": 96,
"nodeType": "StructuredDocumentation",
"src": "617:45:1",
"text": " Returns the latest answer."
},
"functionSelector": "bea4dfb5",
"id": 110,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "getChainlinkDataFeedLatestAnswer",
"nameLocation": "676:32:1",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 97,
"nodeType": "ParameterList",
"parameters": [],
"src": "708:2:1"
},
"returnParameters": {
"id": 100,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 99,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 110,
"src": "732:3:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
},
"typeName": {
"id": 98,
"name": "int",
"nodeType": "ElementaryTypeName",
"src": "732:3:1",
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
},
"visibility": "internal"
}
],
"src": "731:5:1"
},
"scope": 136,
"src": "667:338:1",
"stateMutability": "view",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 134,
"nodeType": "Block",
"src": "1083:120:1",
"statements": [
{
"assignments": [
118
],
"declarations": [
{
"constant": false,
"id": 118,
"mutability": "mutable",
"name": "price",
"nameLocation": "1101:5:1",
"nodeType": "VariableDeclaration",
"scope": 134,
"src": "1093:13:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 117,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1093:7:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"id": 124,
"initialValue": {
"arguments": [
{
"arguments": [],
"expression": {
"argumentTypes": [],
"id": 121,
"name": "getChainlinkDataFeedLatestAnswer",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 110,
"src": "1117:32:1",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$__$returns$_t_int256_$",
"typeString": "function () view returns (int256)"
}
},
"id": 122,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"nameLocations": [],
"names": [],
"nodeType": "FunctionCall",
"src": "1117:34:1",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_int256",
"typeString": "int256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_int256",
"typeString": "int256"
}
],
"id": 120,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "1109:7:1",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": {
"id": 119,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1109:7:1",
"typeDescriptions": {}
}
},
"id": 123,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"nameLocations": [],
"names": [],
"nodeType": "FunctionCall",
"src": "1109:43:1",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "1093:59:1"
},
{
"expression": {
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 132,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 127,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"id": 125,
"name": "ethAmount",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 112,
"src": "1169:9:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "*",
"rightExpression": {
"id": 126,
"name": "price",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 118,
"src": "1181:5:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1169: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": 130,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"leftExpression": {
"hexValue": "3130",
"id": 128,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1189:2:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
},
"value": "10"
},
"nodeType": "BinaryOperation",
"operator": "**",
"rightExpression": {
"hexValue": "38",
"id": 129,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1194:1:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_8_by_1",
"typeString": "int_const 8"
},
"value": "8"
},
"src": "1189:6:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_100000000_by_1",
"typeString": "int_const 100000000"
}
}
],
"id": 131,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "1188:8:1",
"typeDescriptions": {
"typeIdentifier": "t_rational_100000000_by_1",
"typeString": "int_const 100000000"
}
},
"src": "1169:27:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 116,
"id": 133,
"nodeType": "Return",
"src": "1162:34:1"
}
]
},
"functionSelector": "c086381e",
"id": 135,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "convertEthToUsd",
"nameLocation": "1020:15:1",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 113,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 112,
"mutability": "mutable",
"name": "ethAmount",
"nameLocation": "1044:9:1",
"nodeType": "VariableDeclaration",
"scope": 135,
"src": "1036:17:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 111,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1036:7:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "1035:19:1"
},
"returnParameters": {
"id": 116,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 115,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 135,
"src": "1075:7:1",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 114,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1075:7:1",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "1074:9:1"
},
"scope": 136,
"src": "1011:192:1",
"stateMutability": "view",
"virtual": false,
"visibility": "public"
}
],
"scope": 137,
"src": "171:1034:1",
"usedErrors": [],
"usedEvents": []
}
],
"src": "32:1173: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": "608060405268056bc75e2d63100000600255348015601b575f80fd5b5073694aa1769357215de4fac081bf1f309adc32530660015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061060b8061007d5f395ff3fe60806040526004361061003e575f3560e01c80639f883a0514610042578063b60d42881461007e578063bea4dfb514610088578063c086381e146100b2575b5f80fd5b34801561004d575f80fd5b50610068600480360381019061006391906102bc565b6100ee565b60405161007591906102ff565b60405180910390f35b610086610102565b005b348015610093575f80fd5b5061009c610192565b6040516100a99190610330565b60405180910390f35b3480156100bd575f80fd5b506100d860048036038101906100d39190610373565b61022f565b6040516100e591906102ff565b60405180910390f35b5f602052805f5260405f205f915090505481565b60025461010e3461022f565b101561014f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610146906103f8565b60405180910390fd5b345f803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550565b5f8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156101fe573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102229190610493565b5050509150508091505090565b5f80610239610192565b90506305f5e100818461024c9190610537565b61025691906105a5565b915050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61028b82610262565b9050919050565b61029b81610281565b81146102a5575f80fd5b50565b5f813590506102b681610292565b92915050565b5f602082840312156102d1576102d061025e565b5b5f6102de848285016102a8565b91505092915050565b5f819050919050565b6102f9816102e7565b82525050565b5f6020820190506103125f8301846102f0565b92915050565b5f819050919050565b61032a81610318565b82525050565b5f6020820190506103435f830184610321565b92915050565b610352816102e7565b811461035c575f80fd5b50565b5f8135905061036d81610349565b92915050565b5f602082840312156103885761038761025e565b5b5f6103958482850161035f565b91505092915050565b5f82825260208201905092915050565b7f53656e64206d6f726520455448000000000000000000000000000000000000005f82015250565b5f6103e2600d8361039e565b91506103ed826103ae565b602082019050919050565b5f6020820190508181035f83015261040f816103d6565b9050919050565b5f69ffffffffffffffffffff82169050919050565b61043481610416565b811461043e575f80fd5b50565b5f8151905061044f8161042b565b92915050565b61045e81610318565b8114610468575f80fd5b50565b5f8151905061047981610455565b92915050565b5f8151905061048d81610349565b92915050565b5f805f805f60a086880312156104ac576104ab61025e565b5b5f6104b988828901610441565b95505060206104ca8882890161046b565b94505060406104db8882890161047f565b93505060606104ec8882890161047f565b92505060806104fd88828901610441565b9150509295509295909350565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610541826102e7565b915061054c836102e7565b925082820261055a816102e7565b915082820484148315176105715761057061050a565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6105af826102e7565b91506105ba836102e7565b9250826105ca576105c9610578565b5b82820490509291505056fea2646970667358221220c64f31f4ffea7672201fc4723012094b6a4ac97cfbf5599ce9046b7bc73862b264736f6c634300081a0033",
"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 0x60B 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 0x2BC JUMP JUMPDEST PUSH2 0xEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x75 SWAP2 SWAP1 PUSH2 0x2FF 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 0x192 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA9 SWAP2 SWAP1 PUSH2 0x330 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 0x373 JUMP JUMPDEST PUSH2 0x22F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x2FF 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 0x22F JUMP JUMPDEST LT ISZERO PUSH2 0x14F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x146 SWAP1 PUSH2 0x3F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 DUP2 SWAP1 SSTORE POP 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 0x1FE 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 0x222 SWAP2 SWAP1 PUSH2 0x493 JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x239 PUSH2 0x192 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP2 DUP5 PUSH2 0x24C SWAP2 SWAP1 PUSH2 0x537 JUMP JUMPDEST PUSH2 0x256 SWAP2 SWAP1 PUSH2 0x5A5 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 0x28B DUP3 PUSH2 0x262 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x29B DUP2 PUSH2 0x281 JUMP JUMPDEST DUP2 EQ PUSH2 0x2A5 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2B6 DUP2 PUSH2 0x292 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D1 JUMPI PUSH2 0x2D0 PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x2DE DUP5 DUP3 DUP6 ADD PUSH2 0x2A8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2F9 DUP2 PUSH2 0x2E7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x312 PUSH0 DUP4 ADD DUP5 PUSH2 0x2F0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x32A DUP2 PUSH2 0x318 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x343 PUSH0 DUP4 ADD DUP5 PUSH2 0x321 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x352 DUP2 PUSH2 0x2E7 JUMP JUMPDEST DUP2 EQ PUSH2 0x35C JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x36D DUP2 PUSH2 0x349 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x388 JUMPI PUSH2 0x387 PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x395 DUP5 DUP3 DUP6 ADD PUSH2 0x35F 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 0x3E2 PUSH1 0xD DUP4 PUSH2 0x39E JUMP JUMPDEST SWAP2 POP PUSH2 0x3ED DUP3 PUSH2 0x3AE 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 0x40F DUP2 PUSH2 0x3D6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x434 DUP2 PUSH2 0x416 JUMP JUMPDEST DUP2 EQ PUSH2 0x43E JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x44F DUP2 PUSH2 0x42B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x45E DUP2 PUSH2 0x318 JUMP JUMPDEST DUP2 EQ PUSH2 0x468 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x479 DUP2 PUSH2 0x455 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x48D DUP2 PUSH2 0x349 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 DUP1 PUSH0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x4AC JUMPI PUSH2 0x4AB PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x4B9 DUP9 DUP3 DUP10 ADD PUSH2 0x441 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x4CA DUP9 DUP3 DUP10 ADD PUSH2 0x46B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x4DB DUP9 DUP3 DUP10 ADD PUSH2 0x47F JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x4EC DUP9 DUP3 DUP10 ADD PUSH2 0x47F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x4FD DUP9 DUP3 DUP10 ADD PUSH2 0x441 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 0x541 DUP3 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x54C DUP4 PUSH2 0x2E7 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x55A DUP2 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x571 JUMPI PUSH2 0x570 PUSH2 0x50A 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 0x5AF DUP3 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x5BA DUP4 PUSH2 0x2E7 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x5CA JUMPI PUSH2 0x5C9 PUSH2 0x578 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC6 0x4F BALANCE DELEGATECALL SELFDESTRUCT 0xEA PUSH23 0x72201FC4723012094B6A4AC97CFBF5599CE9046B7BC738 PUSH3 0xB26473 PUSH16 0x6C634300081A00330000000000000000 ",
"sourceMap": "171:1034:1:-:0;;;315:12;291:36;;333:106;;;;;;;;;;389:42;356:8;;:76;;;;;;;;;;;;;;;;;;171:1034;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@convertEthToUsd_135": {
"entryPoint": 559,
"id": 135,
"parameterSlots": 1,
"returnSlots": 1
},
"@fund_95": {
"entryPoint": 258,
"id": 95,
"parameterSlots": 0,
"returnSlots": 0
},
"@fundersToAmount_53": {
"entryPoint": 238,
"id": 53,
"parameterSlots": 0,
"returnSlots": 0
},
"@getChainlinkDataFeedLatestAnswer_110": {
"entryPoint": 402,
"id": 110,
"parameterSlots": 0,
"returnSlots": 1
},
"abi_decode_t_address": {
"entryPoint": 680,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_int256_fromMemory": {
"entryPoint": 1131,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256": {
"entryPoint": 863,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256_fromMemory": {
"entryPoint": 1151,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint80_fromMemory": {
"entryPoint": 1089,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_address": {
"entryPoint": 700,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256": {
"entryPoint": 883,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint80t_int256t_uint256t_uint256t_uint80_fromMemory": {
"entryPoint": 1171,
"id": null,
"parameterSlots": 2,
"returnSlots": 5
},
"abi_encode_t_int256_to_t_int256_fromStack": {
"entryPoint": 801,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8_to_t_string_memory_ptr_fromStack": {
"entryPoint": 982,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 752,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed": {
"entryPoint": 816,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 1016,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": 767,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 926,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_div_t_uint256": {
"entryPoint": 1445,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_mul_t_uint256": {
"entryPoint": 1335,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_address": {
"entryPoint": 641,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_int256": {
"entryPoint": 792,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 610,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 743,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint80": {
"entryPoint": 1046,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 1290,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x12": {
"entryPoint": 1400,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 606,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"store_literal_in_memory_78b7994db21b321ba8531e19f302fa7a3e3fe17bff2fbaa020f4bcef4cd665f8": {
"entryPoint": 942,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address": {
"entryPoint": 658,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_int256": {
"entryPoint": 1109,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 841,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint80": {
"entryPoint": 1067,
"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": "60806040526004361061003e575f3560e01c80639f883a0514610042578063b60d42881461007e578063bea4dfb514610088578063c086381e146100b2575b5f80fd5b34801561004d575f80fd5b50610068600480360381019061006391906102bc565b6100ee565b60405161007591906102ff565b60405180910390f35b610086610102565b005b348015610093575f80fd5b5061009c610192565b6040516100a99190610330565b60405180910390f35b3480156100bd575f80fd5b506100d860048036038101906100d39190610373565b61022f565b6040516100e591906102ff565b60405180910390f35b5f602052805f5260405f205f915090505481565b60025461010e3461022f565b101561014f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610146906103f8565b60405180910390fd5b345f803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550565b5f8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa1580156101fe573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102229190610493565b5050509150508091505090565b5f80610239610192565b90506305f5e100818461024c9190610537565b61025691906105a5565b915050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61028b82610262565b9050919050565b61029b81610281565b81146102a5575f80fd5b50565b5f813590506102b681610292565b92915050565b5f602082840312156102d1576102d061025e565b5b5f6102de848285016102a8565b91505092915050565b5f819050919050565b6102f9816102e7565b82525050565b5f6020820190506103125f8301846102f0565b92915050565b5f819050919050565b61032a81610318565b82525050565b5f6020820190506103435f830184610321565b92915050565b610352816102e7565b811461035c575f80fd5b50565b5f8135905061036d81610349565b92915050565b5f602082840312156103885761038761025e565b5b5f6103958482850161035f565b91505092915050565b5f82825260208201905092915050565b7f53656e64206d6f726520455448000000000000000000000000000000000000005f82015250565b5f6103e2600d8361039e565b91506103ed826103ae565b602082019050919050565b5f6020820190508181035f83015261040f816103d6565b9050919050565b5f69ffffffffffffffffffff82169050919050565b61043481610416565b811461043e575f80fd5b50565b5f8151905061044f8161042b565b92915050565b61045e81610318565b8114610468575f80fd5b50565b5f8151905061047981610455565b92915050565b5f8151905061048d81610349565b92915050565b5f805f805f60a086880312156104ac576104ab61025e565b5b5f6104b988828901610441565b95505060206104ca8882890161046b565b94505060406104db8882890161047f565b93505060606104ec8882890161047f565b92505060806104fd88828901610441565b9150509295509295909350565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610541826102e7565b915061054c836102e7565b925082820261055a816102e7565b915082820484148315176105715761057061050a565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6105af826102e7565b91506105ba836102e7565b9250826105ca576105c9610578565b5b82820490509291505056fea2646970667358221220c64f31f4ffea7672201fc4723012094b6a4ac97cfbf5599ce9046b7bc73862b264736f6c634300081a0033",
"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 0x2BC JUMP JUMPDEST PUSH2 0xEE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x75 SWAP2 SWAP1 PUSH2 0x2FF 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 0x192 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA9 SWAP2 SWAP1 PUSH2 0x330 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 0x373 JUMP JUMPDEST PUSH2 0x22F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE5 SWAP2 SWAP1 PUSH2 0x2FF 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 0x22F JUMP JUMPDEST LT ISZERO PUSH2 0x14F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x146 SWAP1 PUSH2 0x3F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 DUP2 SWAP1 SSTORE POP 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 0x1FE 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 0x222 SWAP2 SWAP1 PUSH2 0x493 JUMP JUMPDEST POP POP POP SWAP2 POP POP DUP1 SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x239 PUSH2 0x192 JUMP JUMPDEST SWAP1 POP PUSH4 0x5F5E100 DUP2 DUP5 PUSH2 0x24C SWAP2 SWAP1 PUSH2 0x537 JUMP JUMPDEST PUSH2 0x256 SWAP2 SWAP1 PUSH2 0x5A5 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 0x28B DUP3 PUSH2 0x262 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x29B DUP2 PUSH2 0x281 JUMP JUMPDEST DUP2 EQ PUSH2 0x2A5 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2B6 DUP2 PUSH2 0x292 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D1 JUMPI PUSH2 0x2D0 PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x2DE DUP5 DUP3 DUP6 ADD PUSH2 0x2A8 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2F9 DUP2 PUSH2 0x2E7 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x312 PUSH0 DUP4 ADD DUP5 PUSH2 0x2F0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x32A DUP2 PUSH2 0x318 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x343 PUSH0 DUP4 ADD DUP5 PUSH2 0x321 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x352 DUP2 PUSH2 0x2E7 JUMP JUMPDEST DUP2 EQ PUSH2 0x35C JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x36D DUP2 PUSH2 0x349 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x388 JUMPI PUSH2 0x387 PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x395 DUP5 DUP3 DUP6 ADD PUSH2 0x35F 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 0x3E2 PUSH1 0xD DUP4 PUSH2 0x39E JUMP JUMPDEST SWAP2 POP PUSH2 0x3ED DUP3 PUSH2 0x3AE 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 0x40F DUP2 PUSH2 0x3D6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH10 0xFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x434 DUP2 PUSH2 0x416 JUMP JUMPDEST DUP2 EQ PUSH2 0x43E JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x44F DUP2 PUSH2 0x42B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x45E DUP2 PUSH2 0x318 JUMP JUMPDEST DUP2 EQ PUSH2 0x468 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x479 DUP2 PUSH2 0x455 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x48D DUP2 PUSH2 0x349 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 DUP1 PUSH0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x4AC JUMPI PUSH2 0x4AB PUSH2 0x25E JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x4B9 DUP9 DUP3 DUP10 ADD PUSH2 0x441 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x4CA DUP9 DUP3 DUP10 ADD PUSH2 0x46B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x4DB DUP9 DUP3 DUP10 ADD PUSH2 0x47F JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 PUSH2 0x4EC DUP9 DUP3 DUP10 ADD PUSH2 0x47F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x4FD DUP9 DUP3 DUP10 ADD PUSH2 0x441 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 0x541 DUP3 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x54C DUP4 PUSH2 0x2E7 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 MUL PUSH2 0x55A DUP2 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP DUP3 DUP3 DIV DUP5 EQ DUP4 ISZERO OR PUSH2 0x571 JUMPI PUSH2 0x570 PUSH2 0x50A 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 0x5AF DUP3 PUSH2 0x2E7 JUMP JUMPDEST SWAP2 POP PUSH2 0x5BA DUP4 PUSH2 0x2E7 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x5CA JUMPI PUSH2 0x5C9 PUSH2 0x578 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC6 0x4F BALANCE DELEGATECALL SELFDESTRUCT 0xEA PUSH23 0x72201FC4723012094B6A4AC97CFBF5599CE9046B7BC738 PUSH3 0xB26473 PUSH16 0x6C634300081A00330000000000000000 ",
"sourceMap": "171:1034:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;192:48;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;445:167;;;:::i;:::-;;667:338;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1011:192;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;192:48;;;;;;;;;;;;;;;;;:::o;445:167::-;526:13;;496:26;512:9;496:15;:26::i;:::-;:43;;488:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;596:9;566:15;:27;582:10;566:27;;;;;;;;;;;;;;;:39;;;;445:167::o;667:338::-;732:3;822:10;949:8;;;;;;;;;;;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;774:201;;;;;;992:6;985:13;;;667:338;:::o;1011:192::-;1075:7;1093:13;1117:34;:32;:34::i;:::-;1093:59;;1189:6;1181:5;1169:9;:17;;;;:::i;:::-;:27;;;;:::i;:::-;1162:34;;;1011: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": "309400",
"executionCost": "46719",
"totalCost": "356119"
},
"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": "0xd2d7de32192617b0f3dce9cc46fde936d5b24bdff4c10368e014522bb0852536",
"license": "MIT",
"urls": [
"bzz-raw://d2d71fa512754e3ebeb2fe559298dcd802288e26c40d605b0bff9fb4ac52b1e7",
"dweb:/ipfs/QmRMRy6FD6NvwEqreZhiPnCAFPvbNhEz1cZ49uWrsPveG5"
]
}
},
"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